- fprintf(stderr,
- _("\nDamaged buffers found at %s:%d\n"), fname, lineno);
-
- if (bad & 0x1) {
- fprintf(stderr, _(" discovery of bad prev link.\n"));
- }
- if (bad & 0x2) {
- fprintf(stderr, _(" discovery of bad next link.\n"));
- }
- if (bad & 0x4) {
- fprintf(stderr, _(" discovery of data overrun.\n"));
- }
-
- fprintf(stderr, _(" Buffer address: %lx\n"), (long) ap);
-
- if (ap->abfname != NULL) {
- unsigned memsize = ap->ablen - (HEAD_SIZE + 1);
- char errmsg[80];
-
- fprintf(stderr,
- _("Damaged buffer: %6u bytes allocated at line %d of %s %s\n"),
- memsize, ap->ablineno, my_name, ap->abfname
- );
- if (bufdump) {
- unsigned llen = 0;
- char *cp = ((char *) ap) + HEAD_SIZE;
-
- errmsg[0] = EOS;
- while (memsize) {
- if (llen >= 16) {
- strcat(errmsg, "\n");
- llen = 0;
- fprintf(stderr, "%s", errmsg);
- errmsg[0] = EOS;
- }
- if (*cp < 0x20) {
- sprintf(errmsg + strlen(errmsg), " %02X",
- (*cp++) & 0xFF);
- } else {
- sprintf(errmsg + strlen(errmsg), " %c ",
- (*cp++) & 0xFF);
- }
- llen++;
- memsize--;
- }
- fprintf(stderr, "%s\n", errmsg);
- }
- }
+ fprintf(stderr,
+ _("\nDamaged buffers found at %s:%d\n"), fname, lineno);
+
+ if (bad & 0x1) {
+ fprintf(stderr, _(" discovery of bad prev link.\n"));
+ }
+ if (bad & 0x2) {
+ fprintf(stderr, _(" discovery of bad next link.\n"));
+ }
+ if (bad & 0x4) {
+ fprintf(stderr, _(" discovery of data overrun.\n"));
+ }
+ if (bad & 0x8) {
+ fprintf(stderr, _(" NULL pointer.\n"));
+ }
+
+ if (!ap) {
+ goto get_out;
+ }
+ fprintf(stderr, _(" Buffer address: %p\n"), ap);
+
+ if (ap->abfname != NULL) {
+ unsigned memsize = ap->ablen - (HEAD_SIZE + 1);
+ char errmsg[80];
+
+ fprintf(stderr,
+ _("Damaged buffer: %6u bytes allocated at line %d of %s %s\n"),
+ memsize, ap->ablineno, my_name, ap->abfname
+ );
+ if (bufdump) {
+ unsigned llen = 0;
+ char *cp = ((char *) ap) + HEAD_SIZE;
+
+ errmsg[0] = EOS;
+ while (memsize) {
+ if (llen >= 16) {
+ strcat(errmsg, "\n");
+ llen = 0;
+ fprintf(stderr, "%s", errmsg);
+ errmsg[0] = EOS;
+ }
+ if (*cp < 0x20) {
+ sprintf(errmsg + strlen(errmsg), " %02X",
+ (*cp++) & 0xFF);
+ } else {
+ sprintf(errmsg + strlen(errmsg), " %c ",
+ (*cp++) & 0xFF);
+ }
+ llen++;
+ memsize--;
+ }
+ fprintf(stderr, "%s\n", errmsg);
+ }
+ }