X-Git-Url: https://git.wh0rd.org/?p=dump.git;a=blobdiff_plain;f=restore%2Ftape.c;h=3dc8bbaf7feb89560c699b8bb7d95b9f4439fa45;hp=02892464bdd4d73572e119cfb7ece65a359615a3;hb=e6e3df1becf6e9bc6a28049f098791fa4f74ec43;hpb=9ce5361de22147d955c6603d8915c68cb1009256 diff --git a/restore/tape.c b/restore/tape.c index 0289246..3dc8bba 100644 --- a/restore/tape.c +++ b/restore/tape.c @@ -42,7 +42,7 @@ #ifndef lint static const char rcsid[] = - "$Id: tape.c,v 1.95 2009/12/04 16:29:18 stelian Exp $"; + "$Id: tape.c,v 1.96 2010/03/22 15:40:55 stelian Exp $"; #endif /* not lint */ #include @@ -1238,12 +1238,20 @@ readxattr(char *buffer) skipfile(); return (FAIL); } - + memset(xattrbuf, 0, XATTR_MAXSIZE); xattrlen = 0; + /* + * ugly hack: cope with invalid spcl.c_addr[] records written by + * old versions of dump. + */ + readmapflag = 1; + getfile(xtrxattr, xtrnull); + readmapflag = 0; + memcpy(buffer, xattrbuf, XATTR_MAXSIZE); return (GOOD);