diff -ru ./mapserver-orig-5.4.0/mapfile.c ./mapserver-5.4.0/mapfile.c
--- ./mapserver-orig-5.4.0/mapfile.c    2009-04-07 22:30:23.000000000 +0200
+++ ./mapserver-5.4.0/mapfile.c 2009-05-04 11:03:54.000000000 +0200
@@ -1316,7 +1316,7 @@
   label->size = MS_MEDIUM;
 
   label->position = MS_CC;
-  label->angle = 0;
+  label->angle = 360;
   label->autoangle = MS_FALSE;
   label->autofollow = MS_FALSE;
   label->minsize = MS_MINFONTSIZE;
@@ -2127,7 +2127,9 @@
   fprintf(stream, "      STYLE\n");
   if(style->numbindings > 0 && style->bindings[MS_STYLE_BINDING_ANGLE].item)
      fprintf(stream, "        ANGLE [%s]\n", style->bindings[MS_STYLE_BINDING_ANGLE].item);
-  else if(style->angle != 0) fprintf(stream, "        ANGLE %g\n", style->angle);
+  else if(style->angle != 360 && style->autoangle!=MS_TRUE)
+     fprintf(stream, "        ANGLE %g\n", style->angle);
+  else if(style->autoangle==MS_TRUE) fprintf(stream, "        ANGLE AUTO \n");
 
   if(style->antialias) fprintf(stream, "        ANTIALIAS TRUE\n");
   writeColor(&(style->backgroundcolor), stream, "BACKGROUNDCOLOR", "        ");

