Cool VL Viewer forum

View unanswered posts | View active topics It is currently 2025-08-12 11:46:28



Reply to topic  [ 7 posts ] 
PopMatrix() stack underflow warnings 
Author Message

Joined: 2011-10-07 10:39:20
Posts: 214
Reply with quote
Thanks Henri.

I'll give it a try and see what else might show up.

The modified viewers log also showed a bunch of Warnings about Matrix Underflow/Overflow shortly before the NULL bind error happend, that i haven't seen before:

Quote:
2019-10-29T11:46:53Z INFO: display_stats: FPS: 11.33
2019-10-29T11:46:57Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:46:57Z INFO: LLAppearanceMgr::requestServerAppearanceUpdate: Sending server-side rebake request with COF version: 235799 (last requested version: 235798 - last received update version: 235798)
2019-10-29T11:46:58Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:46:59Z WARNING: LLRender::popMatrix: Matrix stack underflow. (repeated 7 times)
2019-10-29T11:46:59Z INFO: LLAppearanceMgr::serverAppearanceUpdateSuccess: Request OK.
2019-10-29T11:47:01Z WARNING: LLTextureFetchWorker::onCompleted: Texture: 94613215-8cd3-a0bd-087a-99ac6eff3597 CURL GET FAILED, status: Http_404 - reason: Not Found
2019-10-29T11:47:01Z WARNING: LLTextureFetchWorker::doWork: Texture 94613215-8cd3-a0bd-087a-99ac6eff3597: failed harder
2019-10-29T11:47:01Z WARNING: LLViewerFetchedTexture::updateFetch: No data received for image 94613215-8cd3-a0bd-087a-99ac6eff3597, setting as missing. decode_priority = 1.9013e+07 - mRawDiscardLevel = 32767 - current_discard = -1
2019-10-29T11:47:01Z WARNING: LLViewerFetchedTexture::setIsMissingAsset: 94613215-8cd3-a0bd-087a-99ac6eff3597: Marking image as missing
2019-10-29T11:47:21Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:23Z WARNING: LLRender::popMatrix: Matrix stack underflow. (repeated 10 times)
2019-10-29T11:47:23Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:23Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:23Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:23Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:23Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:23Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:23Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:23Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:23Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:23Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:23Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:23Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:23Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:23Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:24Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:24Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:24Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:24Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:24Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:24Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:24Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:24Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:24Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:24Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:24Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:24Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:24Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:24Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:24Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:24Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:24Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:24Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:28Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:28Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:28Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:28Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:28Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:28Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:28Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:28Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:28Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:28Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:28Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:28Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:28Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:28Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:28Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:28Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:28Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:28Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:29Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:29Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:29Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:29Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:29Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:29Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:29Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:29Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:29Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:29Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:32Z INFO: LLViewerStats::getAvatarRenderStatsCoro: Complexity reports: 19 - Too complex reports: 0
2019-10-29T11:47:45Z INFO: LLIMMgr::processNewMessage: IM_NOTHING_SPECIAL session_id(984a62cc-7a1c-0bc3-09f1-68e6c6cb93bb), from_id(ea2a610f-e78f-414f-9693-1d71549697e5)
2019-10-29T11:47:46Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:46Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:46Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:46Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:46Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:46Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:46Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:46Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:47Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:47Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:47Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:47Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:47Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:47Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:47Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:47Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:47Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:47Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:48Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:48Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:48Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:48Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:48Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:48Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:48Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:48Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:48Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:48Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:48Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:48Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:49Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:49Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:49Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:49Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:49Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:49Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:49Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:49Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:49Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:49Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:49Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:49Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:50Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:47:50Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:47:53Z INFO: display_stats: FPS: 12.12
2019-10-29T11:48:03Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:48:03Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:48:03Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:48:03Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:48:03Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:48:03Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:48:04Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:48:04Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:48:04Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:48:04Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:48:04Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:48:04Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:48:04Z WARNING: LLRender::pushMatrix: Matrix stack overflow.
2019-10-29T11:48:04Z WARNING: LLRender::popMatrix: Matrix stack underflow.
2019-10-29T11:48:07Z llrender/llrender.cpp(284) : error
2019-10-29T11:48:07Z ERROR: LLTexUnit::bind: NULL texture


2019-10-29 13:11:09
Profile

Joined: 2009-03-17 18:42:51
Posts: 6030
Reply with quote
kathrine wrote:
The modified viewers log also showed a bunch of Warnings about Matrix Underflow/Overflow shortly before the NULL bind error happend, that i haven't seen before:
Very strange, indeed... Normally, any pushMatrix() is paired (in the same block of code/context), with a popMatrix()... I checked ('grep' is wonderful...) the last dozen diffs between viewer releases in search for a spuriously/wrongly removed popMatrix() but found no such issue. Here again, the recourse to a llerrs (in popMatrix() and pushMatrix(), in place of the existing llwarns) is the best course of action to spot the bug, given the many places where those calls are used in the code.


2019-10-29 13:51:08
Profile WWW

Joined: 2009-03-17 18:42:51
Posts: 6030
Reply with quote
Made this issue a separate topic, since it does not have any relation with the original bug you reported.

I'm still interested to find out where this warnings come from, so if you can get a stack trace, I'll happily investigate and fix the issue. :D


2019-10-30 09:38:32
Profile WWW

Joined: 2011-10-07 10:39:20
Posts: 214
Reply with quote
Got a crash stacktrace for you:

Quote:
CoolVLViewer.exe!LLError::Log::flush(std::basic_ostringstream<char,std::char_traits<char>,std::allocator<char> > * out, const LLError::CallSite & site={...}) Zeile 1106
> CoolVLViewer.exe!render_ui(float zoom_factor, int subfield=0) Zeile 1507
CoolVLViewer.exe!display(bool rebuild=192, float zoom_factor, int subfield=0, bool for_snapshot) Zeile 1192
CoolVLViewer.exe!LLAppViewer::frame(LLEventPump & mainloop) Zeile 1558
CoolVLViewer.exe!LLAppViewer::mainLoop() Zeile 1726
CoolVLViewer.exe!WinMain(HINSTANCE__ * hInstance=0x0000000000000000, HINSTANCE__ * hPrevInstance=0x0000000000000001, char * lpCmdLine, int nCmdShow=0) Zeile 1174


Ask if you need more details.

Log before it was this:
Quote:
2019-10-30T11:32:15Z WARNING: LLViewerFetchedTexture::setIsMissingAsset: a67c2624-30e5-ff75-dc88-4a2b86abc327: Marking image as missing
2019-10-30T11:32:15Z WARNING: LLWearable::importStream: Wearable parameter mismatch. Reading in 26 from file, but created 37 from avatar parameters. type: 1
2019-10-30T11:32:15Z WARNING: LLWearable::importStream: Wearable parameter mismatch. Reading in 3 from file, but created 12 from avatar parameters. type: 14
2019-10-30T11:32:15Z INFO: LLAppearanceMgr::checkOutfit: Outfit restoration completed.
2019-10-30T11:32:15Z INFO: LLAppearanceMgr::requestServerAppearanceUpdate: Sending server-side rebake request with COF version: 235882 (last requested version: -1 - last received update version: 235882)
2019-10-30T11:32:15Z INFO: LLViewerMediaImpl::navigateTo: NOT LOADING media id = f1e18e1d-caf7-2ebe-6c5e-a9213a0c193c - url = about:blank - mime_type =
2019-10-30T11:32:16Z INFO: LLAppearanceMgr::serverAppearanceUpdateSuccess: Request OK.
2019-10-30T11:32:16Z WARNING: LLDrawPoolAlpha::renderAlpha: ONCE: Missing required components, skipping render batch. Expected mask: 0x115f - Masked vertext buffer type: 0x1057
2019-10-30T11:32:16Z INFO: LLVOAvatarSelf::setHoverIfRegionEnabled: Set hover height for self from debug setting: 0m
2019-10-30T11:32:17Z WARNING: LLDrawPoolAlpha::renderAlpha: ONCE (10th time seen): Missing required components, skipping render batch. Expected mask: 0x115f - Masked vertext buffer type: 0x1057
2019-10-30T11:32:19Z INFO: LLCoprocedurePool::LLCoprocedurePool: Created coprocedure pool named "AIS" with 1 items.
2019-10-30T11:32:19Z INFO: `anonymous-namespace'::postAndSuspendSetup::<lambda_624955109c1ed1aad2392c4cd745e49e>::operator (): Promise already satisfied in 'LLCoprocedurePool(AIS)::coprocedureInvokerCoro: The state of the promise has already been set.
2019-10-30T11:32:20Z INFO: LLAppearanceMgr::requestServerAppearanceUpdate: Sending server-side rebake request with COF version: 235883 (last requested version: 235882 - last received update version: 235882)
2019-10-30T11:32:22Z INFO: LLAppearanceMgr::serverAppearanceUpdateSuccess: Request OK.
2019-10-30T11:32:23Z WARNING: LLDrawPoolAlpha::renderAlpha: ONCE (100th time seen): Missing required components, skipping render batch. Expected mask: 0x115f - Masked vertext buffer type: 0x1057
2019-10-30T11:32:25Z INFO: LLAppearanceMgr::requestServerAppearanceUpdate: Sending server-side rebake request with COF version: 235885 (last requested version: 235883 - last received update version: 235883)
2019-10-30T11:32:27Z INFO: LLAppearanceMgr::serverAppearanceUpdateSuccess: Request OK.
2019-10-30T11:32:30Z INFO: LLTextureCache::purgeTextureFilesTimeSliced: time sliced purging with 104 files scheduled for deletion
2019-10-30T11:32:30Z INFO: LLTextureCache::purgeTextureFilesTimeSliced: time sliced purge finished with 104 files deleted in 0.0220211s
2019-10-30T11:32:42Z INFO: LLIMMgr::createFloater: Creating floater for a66e48dd-a299-430d-84f8-1d448a3fcd85 in session d40e4b1e-3f0a-0981-1b9a-68d31862c9db
2019-10-30T11:32:42Z WARNING: LLDrawPoolAlpha::renderAlpha: ONCE (1000th time seen): Missing required components, skipping render batch. Expected mask: 0x115f - Masked vertext buffer type: 0x1057
2019-10-30T11:32:50Z INFO: LLViewerFetchedTexture::setLoadedCallback: ONCE: No aux data available for callback for image: 5eaa2af7-6243-6cb2-f889-c46d06214f53
2019-10-30T11:32:53Z INFO: LLIMMgr::processNewMessage: IM_NOTHING_SPECIAL session_id(d40e4b1e-3f0a-0981-1b9a-68d31862c9db), from_id(a66e48dd-a299-430d-84f8-1d448a3fcd85)
2019-10-30T11:33:10Z llrender/llrender.cpp(1638) : error
2019-10-30T11:33:10Z ERROR: LLRender::popMatrix: Matrix stack underflow.


2019-10-30 12:04:00
Profile

Joined: 2009-03-17 18:42:51
Posts: 6030
Reply with quote
In see a potential culprit... Did you have your camera restricted with RestrainedLove and vision-limiting spheres drawn around your avatar ?


2019-10-30 13:08:25
Profile WWW

Joined: 2011-10-07 10:39:20
Posts: 214
Reply with quote
Not that time no. But i toy with some such stuff frequently. But not in that session.


2019-10-30 13:39:55
Profile

Joined: 2009-03-17 18:42:51
Posts: 6030
Reply with quote
OK, in any case there *is* an issue in render_ui(), since it pushes a matrix and does not check the same matrix mode is in force before popping it... I changed the code and will give you a new pointer on the sources to test.


2019-10-30 13:55:12
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 7 posts ] 

Who is online

Users browsing this forum: No registered users and 49 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.