pkgCacheListParser * debTranslationsIndex::CreateListParser(FileFd &Pkg)
{
if (Pkg.IsOpen() == false)
- return NULL;
+ return nullptr;
_error->PushToStack();
pkgCacheListParser * const Parser = new debTranslationsParser(&Pkg);
bool const newError = _error->PendingError();
_error->MergeWithStack();
- return newError ? NULL : Parser;
+ if (newError)
+ {
+ delete Parser;
+ return nullptr;
+ }
+ else
+ return Parser;
}
/*}}}*/
// dpkg/status Index /*{{{*/
pkgCacheListParser * debStatusIndex::CreateListParser(FileFd &Pkg)
{
if (Pkg.IsOpen() == false)
- return NULL;
+ return nullptr;
_error->PushToStack();
pkgCacheListParser * const Parser = new debStatusListParser(&Pkg);
bool const newError = _error->PendingError();
_error->MergeWithStack();
- return newError ? NULL : Parser;
+ if (newError)
+ {
+ delete Parser;
+ return nullptr;
+ }
+ else
+ return Parser;
}
/*}}}*/
// DebPkgFile Index - a single .deb file as an index /*{{{*/
pkgCacheListParser * debDebPkgFileIndex::CreateListParser(FileFd &Pkg)
{
if (Pkg.IsOpen() == false)
- return NULL;
+ return nullptr;
_error->PushToStack();
pkgCacheListParser * const Parser = new debDebFileParser(&Pkg, DebFile);
bool const newError = _error->PendingError();
_error->MergeWithStack();
- return newError ? NULL : Parser;
+ if (newError)
+ {
+ delete Parser;
+ return nullptr;
+ }
+ else
+ return Parser;
}
uint8_t debDebPkgFileIndex::GetIndexFlags() const
{
pkgCacheListParser * pkgDebianIndexFile::CreateListParser(FileFd &Pkg)
{
if (Pkg.IsOpen() == false)
- return NULL;
+ return nullptr;
_error->PushToStack();
pkgCacheListParser * const Parser = new debListParser(&Pkg);
bool const newError = _error->PendingError();
_error->MergeWithStack();
- return newError ? NULL : Parser;
+ if (newError)
+ {
+ delete Parser;
+ return nullptr;
+ }
+ else
+ return Parser;
}
bool pkgDebianIndexFile::Merge(pkgCacheGenerator &Gen,OpProgress * const Prog)
{