Hack: When tags 00? are used, every separator (DC[1-3]) marks
authorAdam Dickmeiss <adam@indexdata.dk>
Wed, 8 Mar 1995 12:03:15 +0000 (12:03 +0000)
committerAdam Dickmeiss <adam@indexdata.dk>
Wed, 8 Mar 1995 12:03:15 +0000 (12:03 +0000)
the end of the data field.

util/iso2709.c

index 2f6bc37..9df6e25 100644 (file)
@@ -4,7 +4,11 @@
  * Europagate, 1994-1995.
  *
  * $Log: iso2709.c,v $
- * Revision 1.7  1995/02/22 21:28:03  adam
+ * Revision 1.8  1995/03/08 12:03:15  adam
+ * Hack: When tags 00? are used, every separator (DC[1-3]) marks
+ * the end of the data field.
+ *
+ * Revision 1.7  1995/02/22  21:28:03  adam
  * Changed header.
  *
  * Revision 1.5  1995/02/22  15:24:14  adam
@@ -153,7 +157,7 @@ Iso2709Rec iso2709_cvt (const char *buf)
         }
         else
             dp->indicator = NULL;
-
+        printf ("tag=%.3s, dpos = %d, (0%o)\n", dp->tag, dpos, dpos);
         if (memcmp (dp->tag, "00", 2))
             tag00 = 0;
         else
@@ -180,7 +184,7 @@ Iso2709Rec iso2709_cvt (const char *buf)
             strncpyx ((*fpp)->data, buf+dpos, dpos_n - dpos);
             dpos = dpos_n;
             
-            if (buf[dpos] == ISO2709_FS || buf[dpos] == ISO2709_RS)
+            if (buf[dpos] == ISO2709_FS || buf[dpos] == ISO2709_RS || tag00)
                 break;
             
             fpp = &(*fpp)->next;