Index: trunk/rtcm3torinex/lib/rtcm3torinex.c
===================================================================
--- trunk/rtcm3torinex/lib/rtcm3torinex.c	(revision 5535)
+++ trunk/rtcm3torinex/lib/rtcm3torinex.c	(revision 5553)
@@ -2588,5 +2588,5 @@
       else if (r == 1 || r == 2)
       {
-        int i, j, o, nh=0;
+        int i, j, o, nh=0, hl=2;
         char newheader[512];
         struct converttimeinfo cti;
@@ -2619,16 +2619,24 @@
         {
           nh = HandleObsHeader(Parser, newheader, sizeof(newheader), 0);
+          for(i = 0; i < nh; ++i)
+          {
+            if(newheader[i] == '\n')
+              ++hl;
+          }
         }
         if(Parser->rinex3)
         {
+          if(nh)
+          {
+            RTCM3Text("> %04d %02d %02d %02d %02d%11.7f  4%3d\n",
+            cti.year, cti.month, cti.day, cti.hour, cti.minute, cti.second
+            + fmod(Parser->Data.timeofweek/1000.0,1.0), hl);
+            RTCM3Text("%s\n                             "
+            "                               END OF HEADER\n", newheader);
+          }
           RTCM3Text("> %04d %02d %02d %02d %02d%11.7f  %d%3d\n",
           cti.year, cti.month, cti.day, cti.hour, cti.minute, cti.second
-          + fmod(Parser->Data.timeofweek/1000.0,1.0), nh ? 4 : 0,
+          + fmod(Parser->Data.timeofweek/1000.0,1.0), 0,
           Parser->Data.numsats);
-          if(nh)
-          {
-            RTCM3Text("%s\n                             "
-            "                               END OF HEADER\n", newheader);
-          }
           for(i = 0; i < Parser->Data.numsats; ++i)
           {
