diff options
| author | Fabien Costantini <fabien@onepost.net> | 2008-08-26 14:49:51 +0000 |
|---|---|---|
| committer | Fabien Costantini <fabien@onepost.net> | 2008-08-26 14:49:51 +0000 |
| commit | a8e192e6b4d744d90d2461e686f3a14b4cb83970 (patch) | |
| tree | 946bad74c47dc2676411c62b964422e1ee625f46 /src | |
| parent | c874be771241759335094ff58bc6f0e6f5c6ada8 (diff) | |
STR #2004 fix: got inspired from suggested modifications but limited their impact for broken_image test because it is not needed for osx and win32 platforms. thanks Mark and Sebastian. Works great in X11 now.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6168 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
| -rw-r--r-- | src/Fl_Help_View.cxx | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/Fl_Help_View.cxx b/src/Fl_Help_View.cxx index daa0d43a6..3e2fee660 100644 --- a/src/Fl_Help_View.cxx +++ b/src/Fl_Help_View.cxx @@ -893,7 +893,10 @@ Fl_Help_View::draw() if (img) { img->draw(xx + x() - leftline_, yy + y() - fl_height() + fl_descent() + 2); - img->release(); +#if !defined(WIN32) && !defined(__APPLE__) + if ((void*)img != &broken_image) +#endif + if(img->refcount()>0) img->release(); } xx += ww; @@ -2370,8 +2373,10 @@ Fl_Help_View::free_data() { if (get_attr(attrs, "SRC", attr, sizeof(attr))) { // Release the image twice to free it from memory... img = get_image(attr, width, height); - img->release(); - img->release(); +#if !defined(WIN32) && !defined(__APPLE__) + if ((void*)img!=&broken_image) +#endif + while (img->refcount()>0) img->release(); } } } |
