Changeset View
Changeset View
Standalone View
Standalone View
src/ktar.cpp
Show First 20 Lines • Show All 506 Lines • ▼ Show 20 Line(s) | 499 | if (pos == -1) { | |||
---|---|---|---|---|---|
507 | } else { | 507 | } else { | ||
508 | rootDir()->addEntry(e); | 508 | rootDir()->addEntry(e); | ||
509 | } | 509 | } | ||
510 | } else { | 510 | } else { | ||
511 | // In some tar files we can find dir/./file => call cleanPath | 511 | // In some tar files we can find dir/./file => call cleanPath | ||
512 | QString path = QDir::cleanPath(name.left(pos)); | 512 | QString path = QDir::cleanPath(name.left(pos)); | ||
513 | // Ensure container directory exists, create otherwise | 513 | // Ensure container directory exists, create otherwise | ||
514 | KArchiveDirectory *d = findOrCreate(path); | 514 | KArchiveDirectory *d = findOrCreate(path); | ||
515 | if (d) { | ||||
515 | d->addEntry(e); | 516 | d->addEntry(e); | ||
517 | } else { | ||||
518 | delete e; | ||||
519 | return false; | ||||
520 | } | ||||
516 | } | 521 | } | ||
517 | } else { | 522 | } else { | ||
518 | //qCDebug(KArchiveLog) << "Terminating. Read " << n << " bytes, first one is " << buffer[0]; | 523 | //qCDebug(KArchiveLog) << "Terminating. Read " << n << " bytes, first one is " << buffer[0]; | ||
519 | d->tarEnd = dev->pos() - n; // Remember end of archive | 524 | d->tarEnd = dev->pos() - n; // Remember end of archive | ||
520 | ende = true; | 525 | ende = true; | ||
521 | } | 526 | } | ||
522 | } while (!ende); | 527 | } while (!ende); | ||
523 | return true; | 528 | return true; | ||
▲ Show 20 Lines • Show All 406 Lines • Show Last 20 Lines |