<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="RSS_xslt_style.asp" version="1.0" ?>
<rss version="2.0" xmlns:WebWizForums="https://syndication.webwiz.net/rss_namespace/">
 <channel>
  <title>Codejock Developer Community : m_arrDescriptors asserts/crashes</title>
  <link>http://forum.codejock.com/</link>
  <description><![CDATA[This is an XML content feed of; Codejock Developer Community : Skin Framework : m_arrDescriptors asserts/crashes]]></description>
  <copyright>Copyright (c) 2006-2013 Web Wiz Forums - All Rights Reserved.</copyright>
  <pubDate>Mon, 25 May 2026 14:09:39 +0000</pubDate>
  <lastBuildDate>Wed, 17 Jan 2007 10:36:13 +0000</lastBuildDate>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Web Wiz Forums 12.04</generator>
  <ttl>360</ttl>
  <WebWizForums:feedURL>forum.codejock.com/RSS_post_feed.asp?TID=6126</WebWizForums:feedURL>
  <image>
   <title><![CDATA[Codejock Developer Community]]></title>
   <url>http://forum.codejock.com/forum_images/codejock-logo.gif</url>
   <link>http://forum.codejock.com/</link>
  </image>
  <item>
   <title><![CDATA[m_arrDescriptors asserts/crashes : BTW, with only one thread running,...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19447&amp;title=m-arrdescriptors-asserts-crashes#19447</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2656">artsd</a><br /><strong>Subject:</strong> 6126<br /><strong>Posted:</strong> 17 January 2007 at 10:36am<br /><br /><P>BTW, with only one thread running, the progress bars do paint correctly, but i still get crashes in CXTPSkinObjectFrame::OnNcCalcSize() and CXTPSkinManagerClass::DrawThemeBackground() when changing skins (it may take a few skin changes to make it happen)</P><DIV></DIV>]]>
   </description>
   <pubDate>Wed, 17 Jan 2007 10:36:13 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19447&amp;title=m-arrdescriptors-asserts-crashes#19447</guid>
  </item> 
  <item>
   <title><![CDATA[m_arrDescriptors asserts/crashes : Thanks for looking into this.  I...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19445&amp;title=m-arrdescriptors-asserts-crashes#19445</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2656">artsd</a><br /><strong>Subject:</strong> 6126<br /><strong>Posted:</strong> 17 January 2007 at 10:32am<br /><br />Thanks for looking into this.<DIV>&nbsp;</DIV><DIV>I disabled the threads use of skinning by calling this before the threads are created and it works:</DIV><DIV>&nbsp;</DIV><DIV><strong>XTPSkinManager()-&gt;SetAutoApplyNewThreads(FALSE);<BR></strong></DIV><DIV>I have 2 other modeless dialogs (owned by my main thread) that I would also like to disable skinning (to match the modeless dialogs that have the thread problem).&nbsp; But all other windows owned by main thread I would like to continue to thread.</DIV><DIV>&nbsp;</DIV><DIV><strong>How do i disable threading for a specific window?</strong></DIV>]]>
   </description>
   <pubDate>Wed, 17 Jan 2007 10:32:39 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19445&amp;title=m-arrdescriptors-asserts-crashes#19445</guid>
  </item> 
  <item>
   <title><![CDATA[m_arrDescriptors asserts/crashes : Hi, yes thank you. Seems appears...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19443&amp;title=m-arrdescriptors-asserts-crashes#19443</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=6851">Oleg</a><br /><strong>Subject:</strong> 6126<br /><strong>Posted:</strong> 17 January 2007 at 10:28am<br /><br />Hi, yes thank you. Seems appears than same bitmaps drawn in same time. if you run only 1 thread it will work. We will check it how it can be improved.<DIV>&nbsp;</DIV><DIV>May be you can disable skinning for work threads now?</DIV>]]>
   </description>
   <pubDate>Wed, 17 Jan 2007 10:28:20 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19443&amp;title=m-arrdescriptors-asserts-crashes#19443</guid>
  </item> 
  <item>
   <title><![CDATA[m_arrDescriptors asserts/crashes : I applied your fix and it seemed...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19440&amp;title=m-arrdescriptors-asserts-crashes#19440</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2656">artsd</a><br /><strong>Subject:</strong> 6126<br /><strong>Posted:</strong> 17 January 2007 at 9:47am<br /><br />I applied your fix and it seemed to help but I think their are more thread problems.<DIV>&nbsp;</DIV><DIV>I modified the Ribbon sample again. This time the 4 threaded windows will update the progress bars inside them every 100 milliseconds.</DIV><DIV>&nbsp;</DIV><DIV>The progress bars are not painting correctly (half painted). Sometimes, one of the dialogs does not get its title bar / top of frame painted.</DIV><DIV>&nbsp;</DIV><DIV>Changing skins while running also causes problems. I have gotten it to crash in <strong>CXTPSkinObjectFrame::OnNcCalcSize</strong>(BOOL bCalcValidRects, NCCALCSIZE_PARAMS FAR* lpncsp) and in <strong>CXTPSkinManagerClass::DrawThemeBackground</strong>(CDC* pDC, int iPartId, int iStateId, const RECT *pRect).</DIV><DIV>&nbsp;</DIV><DIV><a href="http://forum.codejock.com/uploads/20070117_094708_Ribb&#111;nSample2.zip" target="_blank">uploads/20070117_094708_RibbonSample2.zip</A></DIV><DIV>&nbsp;</DIV><DIV><img src="http://forum.codejock.com/uploads/20070117_094647_progress_bars.JPG" border="0"></DIV><DIV>&nbsp;</DIV>]]>
   </description>
   <pubDate>Wed, 17 Jan 2007 09:47:38 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19440&amp;title=m-arrdescriptors-asserts-crashes#19440</guid>
  </item> 
  <item>
   <title><![CDATA[m_arrDescriptors asserts/crashes : Hello,   I can&amp;#039;t. Think...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19407&amp;title=m-arrdescriptors-asserts-crashes#19407</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=6851">Oleg</a><br /><strong>Subject:</strong> 6126<br /><strong>Posted:</strong> 16 January 2007 at 10:12am<br /><br /><P>Hello, </P><DIV>&nbsp;</DIV><DIV>I can't. Think because this change we made right after release:</DIV><DIV>Source\GraphicLibrary\XTPGraphicBitmapPng.cpp </DIV><DIV>&nbsp;</DIV><DIV>&nbsp;static png_byte&nbsp;&nbsp; **ppbRowPointers = NULL;<BR>==================<BR>&nbsp;png_byte&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; **ppbRowPointers = NULL;</DIV><DIV>&nbsp;</DIV><DIV>&nbsp;</DIV><DIV>please replace this line, rebuild library and check if you still see crush.<BR></DIV>]]>
   </description>
   <pubDate>Tue, 16 Jan 2007 10:12:22 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19407&amp;title=m-arrdescriptors-asserts-crashes#19407</guid>
  </item> 
  <item>
   <title><![CDATA[m_arrDescriptors asserts/crashes : Bump. Oleg, did you get a chance...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19404&amp;title=m-arrdescriptors-asserts-crashes#19404</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2656">artsd</a><br /><strong>Subject:</strong> 6126<br /><strong>Posted:</strong> 16 January 2007 at 9:48am<br /><br />Bump.&nbsp; Oleg, did you get a chance to try my test program?]]>
   </description>
   <pubDate>Tue, 16 Jan 2007 09:48:38 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19404&amp;title=m-arrdescriptors-asserts-crashes#19404</guid>
  </item> 
  <item>
   <title><![CDATA[m_arrDescriptors asserts/crashes : OK. I made a version of RibbonSample_vc60...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19382&amp;title=m-arrdescriptors-asserts-crashes#19382</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2656">artsd</a><br /><strong>Subject:</strong> 6126<br /><strong>Posted:</strong> 15 January 2007 at 3:35pm<br /><br /><DIV>OK. I made a version of RibbonSample_vc60 that will crash but not in quite </DIV><DIV>in the same way. I compiled with VC6 SP3.</DIV><DIV>&nbsp;</DIV><DIV><DIV><a href="http://forum.codejock.com/uploads/20070115_153442_Ribb&#111;nSample2.zip" target="_blank">uploads/20070115_153442_RibbonSample2.zip</A></DIV></DIV><DIV>&nbsp;</DIV><DIV>This sample starts 4 threads that each own a modeless CDialog (in this sample, these threads leak but that is ok).</DIV><DIV>&nbsp;</DIV><DIV>All 4 modeless diaogs are on top of each other so move them so you see all of them.</DIV><DIV>&nbsp;</DIV><DIV>On the ribbon, use the "Skin Test" group to rapidly change between the various skins (click between them quickly). You will get the crash within 20 clicks. Also, notice that the 10 progress bars on each of the modeless dialog bars are not painting correctly if using a skin (paint fine if no skin).</DIV><DIV>&nbsp;</DIV><DIV>Stack dump:</DIV><DIV>&nbsp;</DIV><DIV>memcpy(unsigned char * 0xfeeefeee, unsigned char * 0x01cbd909, unsigned long 57) line 242<BR>png_combine_row(png_struct_def * 0x01cbd4d8, unsigned char * 0xfeeefeee, int 255) line 2258 + 114 bytes<BR>png_read_row(png_struct_def * 0x01cbd4d8, unsigned char * 0xfeeefeee, unsigned char * 0x00000000) line 778 + 18 bytes<BR>png_read_image(png_struct_def * 0x01cbd4d8, unsigned char * * 0x01cbdd90) line 890 + 17 bytes<BR>PngLoadImage(CFile * 0x0298f398 {pos=350 size=366}, unsigned char * * 0x0298f334, unsigned long * 0x0298f330, unsigned long * 0x0298f32c, int * 0x0298f328, png_color_struct * 0x00000000) line 201 + 16 bytes<BR>CXTPGraphicBitmapPng::LoadFromFile(CFile * 0x0298f398 {pos=350 size=366}) line 341 + 29 bytes<BR>CXTPGraphicBitmapPng::LoadFromResource(HINSTANCE__ * 0x10000000, HRSRC__ * 0x100024f0) line 325 + 12 bytes<BR>CXTPImageManagerIcon::LoadBitmapFromResource(HINSTANCE__ * 0x10000000, const char * 0x01cbcf5c, int * 0x0298f578) line 741 + 16 bytes<BR>XTPSkinFrameworkLoadBitmap(HINSTANCE__ * 0x10000000, const char * 0x01cbcf5c, int &amp; 0) line 442 + 17 bytes<BR>CXTPSkinImage::LoadFile(HINSTANCE__ * 0x10000000, const char * 0x01cbcf5c) line 206 + 17 bytes<BR>CXTPSkinManagerResourceFile::LoadImageA(CString {"BLUE_PROGRESSTRACK_BMP"}) line 211 + 26 bytes<BR>CXTPSkinImages::LoadFile(CXTPSkinManagerResourceFile * 0x003360f8, const char * 0x01cbcef4) line 515 + 29 bytes<BR>CXTPSkinManagerSchemaDefault::DrawThemeBackground(CDC * 0x0298f984 {hDC=??? attrib=???}, CXTPSkinManagerClass * 0x01cba2d0, int 1, int 0, const tagRECT * 0x0298f9b4 {top=0 bottom=23 left=0 right=258}) line 754 + 36 bytes<BR>CXTPSkinManagerClass::DrawThemeBackground(CDC * 0x0298f984 {hDC=??? attrib=???}, int 1, int 0, const tagRECT * 0x0298f9b4 {top=0 bottom=23 left=0 right=258}) line 792 + 47 bytes<BR>CXTPSkinObjectProgress::OnPaint() line 119<BR>CWnd::OnWndMsg(unsigned int 15, unsigned int 0, long 0, long * 0x0298fc8c) line 1825<BR>CXTPSkinObject::OnHookMessage(unsigned int 15, unsigned int &amp; 0, long &amp; 0, long &amp; 0) line 278 + 36 bytes<BR>CXTPSkinObjectFrame::OnHookMessage(unsigned int 15, unsigned int &amp; 0, long &amp; 0, long &amp; 0) line 850<BR>CXTPSkinManager::HookWndProc(HWND__ * 0x00370c22, unsigned int 15, unsigned int 0, long 0) line 576 + 32 bytes<BR>USER32! 77d48734()<BR>USER32! 77d48816()<BR>USER32! 77d4b4c0()<BR>USER32! 77d4b50c()<BR>NTDLL! 7c90eae3()<BR>USER32! 77d496c7()<BR>CWinThread::PumpMessage() line 846<BR>CWinThread::Run() line 480 + 11 bytes<BR>_AfxThreadEntry(void * 0x0012eb50) line 125 + 11 bytes<BR>_threadstartex(void * 0x01d25f20) line 212 + 13 bytes<BR>CXTPSkinManagerApiHook::ThreadProcHook(void * 0x01d71d58) line 775 + 9 bytes<BR>KERNEL32! 7c80b683()</DIV><DIV>&nbsp;</DIV>]]>
   </description>
   <pubDate>Mon, 15 Jan 2007 15:35:31 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19382&amp;title=m-arrdescriptors-asserts-crashes#19382</guid>
  </item> 
  <item>
   <title><![CDATA[m_arrDescriptors asserts/crashes : Hi, It will be very helpfull...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19379&amp;title=m-arrdescriptors-asserts-crashes#19379</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=6851">Oleg</a><br /><strong>Subject:</strong> 6126<br /><strong>Posted:</strong> 15 January 2007 at 1:44pm<br /><br />Hi,<DIV>It will be very helpfull if you attach some sample showing it. </DIV><DIV>Do you use 10.4 release?</DIV>]]>
   </description>
   <pubDate>Mon, 15 Jan 2007 13:44:14 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19379&amp;title=m-arrdescriptors-asserts-crashes#19379</guid>
  </item> 
  <item>
   <title><![CDATA[m_arrDescriptors asserts/crashes : I am experiencing intermittent...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19376&amp;title=m-arrdescriptors-asserts-crashes#19376</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2656">artsd</a><br /><strong>Subject:</strong> 6126<br /><strong>Posted:</strong> 15 January 2007 at 1:15pm<br /><br />I am experiencing intermittent skin related crashes with my multi-threaded app at both startup and when changing skins at runtime. BTW, this app uses the ribbon.<DIV>&nbsp;</DIV><DIV>In my app CXTPFrameWnd derived class' ctor, I call:</DIV><DIV>&nbsp;</DIV><DIV>&nbsp;&nbsp;&nbsp; XTPSkinManager()-&gt;SetApplyOptions(xtpSkinApplyMetrics |</DIV><DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xtpSkinApplyFrame | xtpSkinApplyColors);</DIV><DIV>&nbsp;</DIV><DIV>&nbsp;&nbsp;&nbsp; XTPSkinManager()-&gt;LoadSkin(m_strMediaPath + strSkinFile, strSkinIni);<BR><BR>When the user changes the skin at runtime, I just call the LoadSkin() line.</DIV><DIV>&nbsp;</DIV><DIV>After the mainframe has been created and after OnCreateClient() is done it's work I create 3 worker threads that each create a modeless dialog box. This is where the problem comes in.</DIV><DIV>&nbsp;</DIV><DIV>At program startup (in the debugger) I sometimes get crashes relating to the m_arrDescriptors in the CXTPSkinObject. Most of the time it does not crash at startup. But then I can make it crash by changing the skin 5 or 10 times.</DIV><DIV>&nbsp;</DIV><DIV><strong>Do I need to do something special with the mutlithreaded aspect of this?</strong></DIV><DIV>&nbsp;</DIV><DIV>Seems like access to m_arrDescriptors may not be thread safe or something. Perhaps one of my worker threads is accessing the m_arrDescriptors while the main thread is modifying it through the LoadSkin() call?!?</DIV><DIV>&nbsp;</DIV><DIV>The program does not have this problem if I don't create the 3 worker threads. These threads are just simple CWinThread objects that create a modeless CDialog.</DIV><DIV>&nbsp;</DIV>]]>
   </description>
   <pubDate>Mon, 15 Jan 2007 13:15:56 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=6126&amp;PID=19376&amp;title=m-arrdescriptors-asserts-crashes#19376</guid>
  </item> 
 </channel>
</rss>