summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorchengyemao <chengyemao>2001-12-07 05:20:52 (GMT)
committerchengyemao <chengyemao>2001-12-07 05:20:52 (GMT)
commit5f54c2f4342788c459acb85f53c7bb5a847de086 (patch)
tree09b1d3f5bde9e88be214bb7174a62c71a18f2bc9
parent6d2a269946df5ba722f1326a85bdb95d679de263 (diff)
downloadtk-5f54c2f4342788c459acb85f53c7bb5a847de086.zip
tk-5f54c2f4342788c459acb85f53c7bb5a847de086.tar.gz
tk-5f54c2f4342788c459acb85f53c7bb5a847de086.tar.bz2
Added panic in TkPutImage in case of failure to allocate bitmap
-rw-r--r--win/tkWinDraw.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/win/tkWinDraw.c b/win/tkWinDraw.c
index eeaf334..27ce4ca 100644
--- a/win/tkWinDraw.c
+++ b/win/tkWinDraw.c
@@ -10,7 +10,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tkWinDraw.c,v 1.10 2001/12/07 00:02:57 chengyemao Exp $
+ * RCS: @(#) $Id: tkWinDraw.c,v 1.11 2001/12/07 05:20:52 chengyemao Exp $
*/
#include "tkWinInt.h"
@@ -591,7 +591,9 @@ TkPutImage(colors, ncolors, display, d, gc, image, src_x, src_y, dest_x,
}
if(!bitmap) {
panic("Fail to allocate bitmap\n");
- return
+ DeleteDC(dcMem);
+ TkWinReleaseDrawableDC(d, dc, &state);
+ return;
}
bitmap = SelectObject(dcMem, bitmap);
BitBlt(dc, dest_x, dest_y, width, height, dcMem, src_x, src_y, SRCCOPY);