Opened 17 years ago
Closed 15 years ago
#1542 closed bug (fixed)
[GLDirectMode] Crashes when resized to mininial dimension
Reported by: | hauser | Owned by: | phoudoin |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | Applications | Version: | R1/pre-alpha1 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | x86 |
Description
Side note: When opening GLDirectMode window with title "OpenGL Tests" is opening. It would be much better if its title would be the same as entry in the menu.
Attachments (1)
Change History (9)
comment:1 by , 17 years ago
Owner: | changed from | to
---|
by , 17 years ago
Attachment: | GLDirectMode.diff added |
---|
comment:2 by , 17 years ago
I posted a small diff with a possible solution. I can't apply it, maybe someone can review it and apply it.
What I also noticed, is that when you zoom the window, FrameResized does not seem to be called, but maybe it has other causes. FrameResized is called when you resize the window... Appserver bug?
comment:3 by , 17 years ago
app_server freeze wile trying to reproduce this bug.
vm_soft_fault: va 0xffffffff not covered by area in address space vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0xffffffff, ip 0x80097592, write 0, user 0, thread 0x110 vm_soft_fault: va 0xffffffff not covered by area in address space vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0xffffffff, ip 0x80097592, write 0, user 0, thread 0x113 vm_soft_fault: va 0xc not covered by area in address space vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0xc, ip 0x2e5e17, write 0, user 1, thread 0x1ff vm_page_fault: sending team "/boot/beos/demos/GLDirectMode" 0x1fa SIGSEGV, ip 0x2e5e17 ("libbe.so_seg0ro" +0xdee17) stack trace: 0x002e4588 (libbe.so_seg0ro + 0xdd588) 0x007340cf (Mesa Software Renderer_seg0ro + 0x170cf) 0x004cd0ab (libGL.so_seg0ro + 0x320ab) 0x00204383 (GLDirectMode_seg0ro + 0x4383) 0x0036bf1a (libbe.so_seg0ro + 0x164f1a) 0x004cd7d3 (libGL.so_seg0ro + 0x327d3) 0x002049ea (GLDirectMode_seg0ro + 0x49ea) 0x002c5abf (libbe.so_seg0ro + 0xbeabf) 0x00372645 (libbe.so_seg0ro + 0x16b645) 0x004897df (libgame.so_seg0ro + 0xf7df) 0x00375dcc (libbe.so_seg0ro + 0x16edcc) 0x00489b33 (libgame.so_seg0ro + 0xfb33) 0x002c6fff (libbe.so_seg0ro + 0xbffff) 0x005986a0 (libroot.so_seg0ro + 0x216a0) 0x70080fec (w>OpenGL Test_1ff_stack + 0x3ffec) vm_soft_fault: va 0x0 not covered by area in address space vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0x0, ip 0x8009b7c8, write 0, user 0, thread 0x1ff debug_server: Thread 511 entered the debugger: Segment violation stack trace, current PC 0x2e5e17 _AssertPointer__7BBitmap + 0x17: (0x70080a1c) 0x2e4588 Bits__C7BBitmap + 0x20 (0x70080a4c) 0x7340cf LockGL__20MesaSoftwareRenderer + 0x3bb (0x70080acc) 0x4cd0ab LockGL__7BGLView + 0x37 (0x70080afc) 0x204383 FrameResized__12SampleGLViewff + 0x2f (0x70080b3c) 0x36bf1a MessageReceived__5BViewP8BMessage + 0x8a (0x70080c5c) 0x4cd7d3 MessageReceived__7BGLViewP8BMessage + 0x23 (0x70080c8c) 0x2049ea MessageReceived__12SampleGLViewP8BMessage + 0x46 (0x70080cbc) 0x2c5abf DispatchMessage__7BLooperP8BMessageP8BHandler + 0x5b (0x70080cec) 0x372645 DispatchMessage__7BWindowP8BMessageP8BHandler + 0x155d (0x70080ebc) 0x4897df DispatchMessage__13BDirectWindowP8BMessageP8BHandler + 0x27 (0x70080eec) 0x375dcc task_looper__7BWindow + 0x270 (0x70080f4c) 0x489b33 task_looper__13BDirectWindow + 0x1f (0x70080f7c) 0x2c6fff _task0___7BLooperPv + 0x3f (0x70080fac) 0x5986a0 _get_next_team_info + 0x5c (closest symbol)
comment:4 by , 17 years ago
Patch applied. The crash happens in Mesa Software Renderer, because BBitmap can't be allocated with a (0,0,-1,-1) bound. Will fix it in a few minutes.
comment:7 by , 17 years ago
Replying to diver:
Philippe, i guess you forgot to commit something?
Indeed. The app/server crash/BBitmap failed assertion is not fixed yet.
I didn't found the time to fix it last night, as the initial quick fix I had in mind for Mesa Software Renderer add-on was not enough, just postponing the crash a few calls later (in mesa code, not anymore in app_server).
I will try to do it tonight...
comment:8 by , 15 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Seems OK. I added a check in hrev30869 in the Mesa software renderer.
Simple solution: Don't allow the window to get too small