src/driver/pictureviewer/pictureviewer.cpp: move free handlers to ~CPictureViewer(), fix segfault aufter commit 833fb32197

This commit is contained in:
Jacek Jendrzej
2013-04-24 12:03:58 +02:00
parent 2503a742a9
commit 725b3eb27c
2 changed files with 12 additions and 7 deletions

View File

@@ -368,6 +368,17 @@ CPictureViewer::CPictureViewer ()
init_handlers ();
}
CPictureViewer::~CPictureViewer ()
{
Cleanup();
CFormathandler *fh = fh_root;
while (fh) {
CFormathandler *tmp = fh->next;
free(fh);
fh = tmp;
}
}
void CPictureViewer::showBusy (int sx, int sy, int width, char r, char g, char b)
{
// dbout("Show Busy{\n");
@@ -446,12 +457,6 @@ void CPictureViewer::Cleanup ()
free (m_CurrentPic_Buffer);
m_CurrentPic_Buffer = NULL;
}
CFormathandler *fh = fh_root;
while (fh) {
CFormathandler *tmp = fh->next;
free(fh);
fh = tmp;
}
}
void CPictureViewer::getSize(const char* name, int* width, int *height)

View File

@@ -50,7 +50,7 @@ class CPictureViewer
COLOR=2
};
CPictureViewer();
~CPictureViewer(){Cleanup();};
~CPictureViewer();
bool ShowImage(const std::string & filename, bool unscaled=false);
bool DecodeImage(const std::string & name, bool showBusySign=false, bool unscaled=false);
bool DisplayNextImage();