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-04-28 23:52:43.000000000 +0200
@@ -1911,7 +1911,7 @@
   style->minscaledenom=style->maxscaledenom = -1.0;
   style->offsetx = style->offsety = 0; /* no offset */
   style->antialias = MS_FALSE;
-  style->angle = 360;
+  style->angle = 0;
   style->autoangle= MS_FALSE;
   style->opacity = 100; /* fully opaque */
   style->_geomtransformexpression = NULL;
@@ -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 != 0 && 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", "        ");

