the openSUSE GNU ar (GNU Binutils; openSUSE 11.0) 2.18.50.
20080409-11.1
uses '`' character instead '\n' for padding
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@5366
4a8a32a2-be11-0410-ad9d-
d568d2c75423
+2009-02-09 Borut Razem <borut.razem AT siol.net>
+
+ * asranlib/asranlib.c, link/lkar.c: don't check the padding bytes since
+ the openSUSE GNU ar (GNU Binutils; openSUSE 11.0) 2.18.50.20080409-11.1
+ uses '`' character instead '\n' for padding
+
2009-02-08 Borut Razem <borut.razem AT siol.net>
* as/COPYING3: added
if (!(hdr_len = ar_get_header (&hdr, fp, (verbose || list) ? &name : NULL)))
return 1;
}
+ else if (!verbose && !list)
+ free (name);
first_member_offset = ftell (fp) - hdr_len;
enum_symbols (fp, hdr.ar_size, add_symbol, NULL);
- fseek (fp, mdule_offset + hdr.ar_size, SEEK_SET);
-
- if (hdr.ar_size & 1)
- {
- int c = getc (fp);
- assert (c == EOF || c == '\n');
- }
+ fseek (fp, mdule_offset + hdr.ar_size + (hdr.ar_size & 1), SEEK_SET);
}
if (verbose)
add_rel_index (libfp, hdr.ar_size, This);
- fseek (libfp, moduleOffset + hdr.ar_size, SEEK_SET);
- }
-
- if (hdr.ar_size & 1)
- {
- int c = getc (libfp);
- assert (c == EOF || c == '\n');
+ fseek (libfp, moduleOffset + hdr.ar_size + (hdr.ar_size & 1), SEEK_SET);
}
}
}
if (hdr.ar_size & 1)
- {
- int c = getc (libfp);
- assert (c == EOF || c == '\n');
- }
+ getc (libfp);
free (adb_name);
return 1;
if (ret)
break;
- fseek (libfp, moduleOffset + hdr.ar_size, SEEK_SET);
- }
-
- if (hdr.ar_size & 1)
- {
- int c = getc (libfp);
- assert (c == EOF || c == '\n');
+ fseek (libfp, moduleOffset + hdr.ar_size + (hdr.ar_size & 1), SEEK_SET);
}
}