Closed Bug 303256 Opened 19 years ago Closed 12 years ago

###!!! ASSERTION: attempt to blit with bad DCs: '0', file r:/mozilla/gfx/src/windows/nsRenderingContextWin.cpp, line 2483

Categories

(Core Graveyard :: GFX: Win32, defect, P5)

x86
Windows XP
defect

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: timeless, Unassigned)

References

()

Details

(Keywords: assertion)

steps:
1. run mfcembed
2. set homepage to http://landfill.mozilla.org/ryl/random.html
3. open 16-25 windows
4. let them run for a while
5. occasionally close windows
6. occasionally maximize/restore, possibly minimize windows

actual results (eventually):
0[3e4cc0]: ###!!! ASSERTION: attempt to blit with bad DCs: '0', file 
r:/mozilla/gfx/src/windows/nsRenderingContextWin.cpp, line 2483
0[3e4cc0]: ###!!! Break: at file 
r:/mozilla/gfx/src/windows/nsRenderingContextWin.cpp, line 2483

0:000> dt this
Local var @ 0x12f41c Type nsRenderingContextWin*
0x04427590 
   +0x000 __VFN_table : 0x029f2368 
   +0x004 mTranMatrix      : 0x03d842b4 
   +0x008 mLineStyle       : 1 ( nsLineStyle_kSolid )
   +0x00c mAct             : 0
   +0x010 mActive          : (null) 
   +0x014 mPenMode         : 0 ( nsPenMode_kNone )
   =029fe568 nsRenderingContextImpl::gBackbuffer : 0x04f19348 
   =029fe574 nsRenderingContextImpl::gBackbufferBounds : nsRect
   =029fe56c nsRenderingContextImpl::gLargestRequestedSize : nsSize
   +0x018 __VFN_table : 0x029f2354 
   +0x01c mRefCnt          : 
   +0x020 _mOwningThread   : nsAutoOwningThread
   +0x024 mCurrentColor    : 0xff808080
   +0x028 mFontMetrics     : (null) 
   +0x02c mDC              : (null) 
   +0x030 mMainDC          : 0x9401396e 
   +0x034 mSurface         : 0x04f19348 
   +0x038 mMainSurface     : 0x04d0af70 
   +0x03c mColor           : 0x808080
   +0x040 mDCOwner         : (null) 
   +0x044 mContext         : 0x0465f010 
   +0x048 mP2T             : 15 
   +0x04c mClipRegion      : (null) 
   +0x050 mOrigSolidBrush  : (null) 
   +0x054 mOrigFont        : (null) 
   +0x058 mOrigSolidPen    : (null) 
   +0x05c mOrigPalette     : (null) 
   +0x060 mStates          : 0x03d842b0 
   +0x064 mStateCache      : 0x06bff2d8 
   +0x068 mCurrBrushColor  : 0xffffffff
   +0x06c mCurrBrush       : 0x01900010 
   +0x070 mCurrFontWin     : 0x0673c028 
   +0x074 mCurrFont        : 0x018a0021 
   +0x078 mCurrPenColor    : 0xff000000
   +0x07c mCurrPen         : 0x01b00017 
   +0x080 mNullPen         : (null) 
   +0x084 mGammaTable      : (null) 
   +0x088 mCurrTextColor   : 0xff000000
   +0x08c mCurrLineStyle   : 1 ( nsLineStyle_kSolid )
   +0x090 mInitialized     : 0x1 ''
   +0x091 mRightToLeftText : 0 ''
0:000> dt gkgfxwin!nsDrawingSurfaceWin 0x04f19348 
   +0x000 __VFN_table : 0x029f194c 
   +0x004 __VFN_table : 0x029f1924 
   +0x008 mRefCnt          : 
   +0x00c _mOwningThread   : nsAutoOwningThread
   +0x010 mDC              : (null) 
   +0x014 mOrigBitmap      : (null) 
   +0x018 mSelectedBitmap  : (null) 
   +0x01c mKillDC          : 1
   +0x020 mBitmapInfo      : (null) 
   +0x024 mDIBits          : (null) 
   +0x028 mBitmap          : tagBITMAP
   +0x040 mPixFormat       : nsPixelFormat
   +0x068 mLockedBitmap    : (null) 
   +0x06c mWidth           : 0
   +0x070 mHeight          : 0
   +0x074 mLockOffset      : 0
   +0x078 mLockHeight      : 0
   +0x07c mLockFlags       : 0
   +0x080 mTechnology      : 0
0:000> dt gkgfxwin!nsDrawingSurfaceWin 0x04d0af70 
   +0x000 __VFN_table : 0x029f194c 
   +0x004 __VFN_table : 0x029f1924 
   +0x008 mRefCnt          : 
   +0x00c _mOwningThread   : nsAutoOwningThread
   +0x010 mDC              : 0x9401396e 
   +0x014 mOrigBitmap      : (null) 
   +0x018 mSelectedBitmap  : (null) 
   +0x01c mKillDC          : 0
   +0x020 mBitmapInfo      : (null) 
   +0x024 mDIBits          : (null) 
   +0x028 mBitmap          : tagBITMAP
   +0x040 mPixFormat       : nsPixelFormat
   +0x068 mLockedBitmap    : (null) 
   +0x06c mWidth           : 0
   +0x070 mHeight          : 0
   +0x074 mLockOffset      : 0
   +0x078 mLockHeight      : 0
   +0x07c mLockFlags       : 0
   +0x080 mTechnology      : 1

this is ds from the caller frame:
0:000> dt gkgfxwin!nsDrawingSurfaceWin 0x04f19348
   +0x000 __VFN_table : 0x029f194c 
   +0x004 __VFN_table : 0x029f1924 
   +0x008 mRefCnt          : 
   +0x00c _mOwningThread   : nsAutoOwningThread
   +0x010 mDC              : (null) 
   +0x014 mOrigBitmap      : (null) 
   +0x018 mSelectedBitmap  : (null) 
   +0x01c mKillDC          : 1
   +0x020 mBitmapInfo      : (null) 
   +0x024 mDIBits          : (null) 
   +0x028 mBitmap          : tagBITMAP
   +0x040 mPixFormat       : nsPixelFormat
   +0x068 mLockedBitmap    : (null) 
   +0x06c mWidth           : 0
   +0x070 mHeight          : 0
   +0x074 mLockOffset      : 0
   +0x078 mLockHeight      : 0
   +0x07c mLockFlags       : 0
   +0x080 mTechnology      : 0

 # 
00 ntdll!DbgBreakPoint (FPO: [0,0,0])
01 xpcom_core!nsDebugImpl::Break(char * aFile = 
0x029f2078 "r:/mozilla/gfx/src/windows/nsRenderingContextWin.cpp", int aLine = 
0x9b3)+0x7e (FPO: [Non-Fpo]) (CONV: stdcall) 
[r:\mozilla\xpcom\base\nsdebugimpl.cpp @ 350]
02 xpcom_core!nsDebugImpl::Assertion(char * aStr = 0x029f20b4 "attempt to blit 
with bad DCs", char * aExpr = 0x029f20b0 "0", char * aFile = 
0x029f2078 "r:/mozilla/gfx/src/windows/nsRenderingContextWin.cpp", int aLine = 
0x9b3)+0x29e (FPO: [Non-Fpo]) (CONV: stdcall) 
[r:\mozilla\xpcom\base\nsdebugimpl.cpp @ 266]
03 xpcom_core!nsDebug::Assertion(char * aStr = 0x029f20b4 "attempt to blit with 
bad DCs", char * aExpr = 0x029f20b0 "0", char * aFile = 
0x029f2078 "r:/mozilla/gfx/src/windows/nsRenderingContextWin.cpp", int aLine = 
0x9b3)+0x4d (FPO: [Non-Fpo]) (CONV: cdecl) [r:\mozilla\dbg-i686-pc-
cygwin\xpcom\build\nsdebug.cpp @ 109]
04 gkgfxwin!nsRenderingContextWin::CopyOffScreenBits(class nsIDrawingSurface * 
aSrcSurf = 0x04f19348, int aSrcX = 0, int aSrcY = 0, struct nsRect * 
aDestBounds = 0x0012f4f8, unsigned int aCopyFlags = 1)+0x1bf (FPO: [Non-Fpo]) 
(CONV: stdcall) [r:\mozilla\gfx\src\windows\nsrenderingcontextwin.cpp @ 2483]
05 gklayout!nsViewManager::Refresh(class nsView * aView = 0x03298cb8, class 
nsIRenderingContext * aContext = 0x04427590, class nsIRegion * aRegion = 
0x0813dc40, unsigned int aUpdateFlags = 1)+0x7b0 (FPO: [Non-Fpo]) (CONV: 
thiscall) [r:\mozilla\view\src\nsviewmanager.cpp @ 947]
06 gklayout!nsViewManager::DispatchEvent(class nsGUIEvent * aEvent = 
0x0012f7c0, nsEventStatus * aStatus = 0x0012f6a0)+0x344 (FPO: [Non-Fpo]) (CONV: 
stdcall) [r:\mozilla\view\src\nsviewmanager.cpp @ 2037]
07 gklayout!HandleEvent(class nsGUIEvent * aEvent = 0x0012f7c0)+0x44 (FPO: [Non-
Fpo]) (CONV: cdecl) [r:\mozilla\view\src\nsview.cpp @ 173]
08 gkwidget!nsWindow::DispatchEvent(class nsGUIEvent * event = 0x0012f7c0, 
nsEventStatus * aStatus = 0x0012f824)+0xb5 (FPO: [Non-Fpo]) (CONV: stdcall) 
[r:\mozilla\widget\src\windows\nswindow.cpp @ 1172]
09 gkwidget!nsWindow::DispatchWindowEvent(class nsGUIEvent * event = 
0x0012f7c0, nsEventStatus * aStatus = 0x0012f824)+0x22 (FPO: [Non-Fpo]) (CONV: 
thiscall) [r:\mozilla\widget\src\windows\nswindow.cpp @ 1198]
0a gkwidget!nsWindow::OnPaint(struct HDC__ * aDC = 0x00000000)+0x302 (FPO: [Non-
Fpo]) (CONV: thiscall) [r:\mozilla\widget\src\windows\nswindow.cpp @ 5574]
0b gkwidget!nsWindow::ProcessMessage(unsigned int msg = 0xf, unsigned int 
wParam = 0, long lParam = 0, long * aRetValue = 0x0012fcc8)+0x65b (FPO: [Non-
Fpo]) (CONV: thiscall) [r:\mozilla\widget\src\windows\nswindow.cpp @ 4270]
0c gkwidget!nsWindow::WindowProc(struct HWND__ * hWnd = 0x002a074e, unsigned 
int msg = 0xf, unsigned int wParam = 0, long lParam = 0)+0x134 (FPO: [Non-Fpo]) 
(CONV: stdcall) [r:\mozilla\widget\src\windows\nswindow.cpp @ 1349]
0d USER32!InternalCallWinProc+0x28
0e USER32!UserCallWinProcCheckWow+0x150 (FPO: [Non-Fpo])
0f USER32!DispatchClientMessage+0xa3 (FPO: [Non-Fpo])
10 USER32!__fnDWORD+0x24 (FPO: [Non-Fpo])
11 ntdll!KiUserCallbackDispatcher+0x13 (FPO: [0,0,0])
12 USER32!NtUserDispatchMessage+0xc
13 USER32!DispatchMessageA+0xf (FPO: [Non-Fpo])
14 MFC71D!AfxInternalPumpMessage+0x100 (FPO: [Non-Fpo])
15 MFC71D!CWinThread::PumpMessage+0xc (FPO: [Non-Fpo])
16 MFC71D!CWinThread::Run+0x87 (FPO: [Non-Fpo])
17 MFC71D!CWinApp::Run+0x57 (FPO: [Non-Fpo])
18 MFC71D!AfxWinMain+0xda (FPO: [Non-Fpo])
19 mfcembed!WinMain(struct HINSTANCE__ * hInstance = 0x00400000, struct 
HINSTANCE__ * hPrevInstance = 0x00000000, char * lpCmdLine = 0x00142394 "", int 
nCmdShow = 0xa)+0x18 (FPO: [Non-Fpo]) (CONV: stdcall) [f:\vs70builds\3077
\vc\mfcatl\ship\atlmfc\src\mfc\appmodul.cpp @ 25]
1a mfcembed!WinMainCRTStartup(void)+0x1f2 (FPO: [Non-Fpo]) (CONV: cdecl) 
[f:\vs70builds\3077\vc\crtbld\crt\src\crtexe.c @ 390]
1b kernel32!BaseProcessStart+0x23 (FPO: [Non-Fpo])
Status: UNCONFIRMED → NEW
Ever confirmed: true
Priority: -- → P5
Product: Core → Core Graveyard
Bug 418104 removed nsRenderingContextWin.cpp, and hence the assertion as well.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.