InputStream: add virtual destructor
Replaces the method Close().
This commit is contained in:
@@ -61,7 +61,7 @@ public:
|
||||
}
|
||||
|
||||
~Bzip2ArchiveFile() {
|
||||
istream->Close();
|
||||
delete istream;
|
||||
}
|
||||
|
||||
void Ref() {
|
||||
@@ -102,7 +102,6 @@ struct Bzip2InputStream final : public InputStream {
|
||||
~Bzip2InputStream();
|
||||
|
||||
bool Open(Error &error);
|
||||
void Close();
|
||||
};
|
||||
|
||||
extern const InputPlugin bz2_inputplugin;
|
||||
@@ -132,12 +131,6 @@ Bzip2InputStream::Open(Error &error)
|
||||
return true;
|
||||
}
|
||||
|
||||
inline void
|
||||
Bzip2InputStream::Close()
|
||||
{
|
||||
BZ2_bzDecompressEnd(&bzstream);
|
||||
}
|
||||
|
||||
/* archive open && listing routine */
|
||||
|
||||
static ArchiveFile *
|
||||
@@ -166,6 +159,7 @@ Bzip2InputStream::Bzip2InputStream(Bzip2ArchiveFile &_context,
|
||||
|
||||
Bzip2InputStream::~Bzip2InputStream()
|
||||
{
|
||||
BZ2_bzDecompressEnd(&bzstream);
|
||||
archive->Unref();
|
||||
}
|
||||
|
||||
@@ -183,15 +177,6 @@ Bzip2ArchiveFile::OpenStream(const char *path,
|
||||
return bis;
|
||||
}
|
||||
|
||||
static void
|
||||
bz2_is_close(InputStream *is)
|
||||
{
|
||||
Bzip2InputStream *bis = (Bzip2InputStream *)is;
|
||||
|
||||
bis->Close();
|
||||
delete bis;
|
||||
}
|
||||
|
||||
static bool
|
||||
bz2_fillbuffer(Bzip2InputStream *bis, Error &error)
|
||||
{
|
||||
@@ -273,7 +258,6 @@ const InputPlugin bz2_inputplugin = {
|
||||
nullptr,
|
||||
nullptr,
|
||||
nullptr,
|
||||
bz2_is_close,
|
||||
nullptr,
|
||||
nullptr,
|
||||
nullptr,
|
||||
|
@@ -181,14 +181,6 @@ Iso9660ArchiveFile::OpenStream(const char *pathname,
|
||||
statbuf);
|
||||
}
|
||||
|
||||
static void
|
||||
iso9660_input_close(InputStream *is)
|
||||
{
|
||||
Iso9660InputStream *iis = (Iso9660InputStream *)is;
|
||||
|
||||
delete iis;
|
||||
}
|
||||
|
||||
inline size_t
|
||||
Iso9660InputStream::Read(void *ptr, size_t read_size, Error &error)
|
||||
{
|
||||
@@ -250,7 +242,6 @@ const InputPlugin iso9660_input_plugin = {
|
||||
nullptr,
|
||||
nullptr,
|
||||
nullptr,
|
||||
iso9660_input_close,
|
||||
nullptr,
|
||||
nullptr,
|
||||
nullptr,
|
||||
|
@@ -142,14 +142,6 @@ ZzipArchiveFile::OpenStream(const char *pathname,
|
||||
_file);
|
||||
}
|
||||
|
||||
static void
|
||||
zzip_input_close(InputStream *is)
|
||||
{
|
||||
ZzipInputStream *zis = (ZzipInputStream *)is;
|
||||
|
||||
delete zis;
|
||||
}
|
||||
|
||||
static size_t
|
||||
zzip_input_read(InputStream *is, void *ptr, size_t size,
|
||||
Error &error)
|
||||
@@ -202,7 +194,6 @@ const InputPlugin zzip_input_plugin = {
|
||||
nullptr,
|
||||
nullptr,
|
||||
nullptr,
|
||||
zzip_input_close,
|
||||
nullptr,
|
||||
nullptr,
|
||||
nullptr,
|
||||
|
Reference in New Issue
Block a user