World: r3wp
[View] discuss view related issues
older newer | first last |
Henrik 4-Sep-2006 [5397] | I have 3 different inform windows and it definitely happens in 2 of them, always when clicking the close button. |
Volker 4-Sep-2006 [5398] | Also when you use "hide-popup"? Else maybe the auto-close has a bug, does a 'unview only? |
Henrik 4-Sep-2006 [5399x4] | haven't tested with that yet. I have a custom event function for closing the main window: insert-event-func func [face event] [ if event/type = 'resize [ help-window-resize main-resize ] either event/type = 'close [ either event/face/text = main-window-title [ if request/confirm "Afslut programmet?" [quit event] ][ event ] ][ event ] ] |
It happens also when using HIDE-POPUP | |
hmm... this is something that goes on in my toolbar code, so it should not happen with VID in general. it's still a strange error however. a face simply disappears from a PANE block :-) | |
does SHOW set the parent-face automatically in subfaces of a pane? | |
Anton 4-Sep-2006 [5403] | Yes it does. |
Henrik 4-Sep-2006 [5404] | it's when I do a SHOW on the toolbar that it crashes, but I'm still miles away from what exactly is going on... |
Anton 4-Sep-2006 [5405] | Actually, the opposite can be a problem - expecting parent-face to be set before the face has been SHOWed. eg. you have LAYOUT a window, but not VIEWed it yet. |
Henrik 4-Sep-2006 [5406x2] | that would just cause a crash to console, wouldn't it? |
e.g. couldn't find an object in parent-face | |
Anton 4-Sep-2006 [5408x3] | Yes - sorry, that problem is probably not exactly related to yours. |
What the wierest thing your toolbar does ? | |
wierdest | |
Henrik 4-Sep-2006 [5411] | trying to create a separate applicaton and torture toolbar that way. it happens if I update toolbar and recreate its contents exactly 19 times. |
Anton 4-Sep-2006 [5412x3] | weirdest |
Cool. Keep on it. | |
You released the toolbar somewhere... | |
Henrik 4-Sep-2006 [5415x4] | uhmm... not sure about weirdest :-) but I build the toolbar layout from a block that is parsed, appending faces and their attributes as it gets parsed. when that's done, I show it.. |
can't remember if it's the latest version... it has a few extras | |
http://hmkdesign.dk/rebol/toolbar/toolbar.r | |
it's pretty new | |
Anton 4-Sep-2006 [5419] | and is your code to show the bug shortish ? |
Henrik 4-Sep-2006 [5420] | I'm not done with it yet. I still only have seen the problem in the complex application, but the test code is so far about 15 lines |
Anton 4-Sep-2006 [5421] | I would make a "debug" copy of the complex application, then cut out chunks until the bug no longer appears. |
Henrik 4-Sep-2006 [5422x3] | the thing is that it happens when I close an INFORM too |
but I'm not sure about the relation between that inform and a toolbar update. | |
:-( ran 2000 updates on the test version without problems. | |
Anton 4-Sep-2006 [5425] | Just looking at the toolbar code, I suspect the DRAW dialect, perhaps it is the use of FILL-PEN LINEAR ? I seem to remember a bug there... |
Henrik 4-Sep-2006 [5426] | I could try disabling it... |
Anton 4-Sep-2006 [5427x2] | Well, the best idea is to start with a copy of the full app, as I suggested above. I've done the same thing as you, trying to track down bugs, trying to guess what it is. |
Guessing is cool but it's not as sure as subdivision. | |
Henrik 4-Sep-2006 [5429] | true, but it will be very time consuming... |
Anton 4-Sep-2006 [5430] | Can be hard sometimes to remove certain chunks, but usually you can disable large chunks of code using comments, verify that the bug is still there, then remove the code - and repeat until there's not much left and the bug is obvious. |
Henrik 4-Sep-2006 [5431] | well, DRAW isn't the culprit |
Anton 4-Sep-2006 [5432] | Ok, so my first guess has removed a small amount of code. (wouldn't it be better if it was 50% of the code ? :-) |
Henrik 4-Sep-2006 [5433x2] | http://hmkdesign.dk/rebol/toolbar/toolbar-demo.r<--- I don't know if the bug shows here |
the thing is, what if it's a buffer overflow? that will be really hard to fix, because you might run into the bug randomly. | |
Anton 4-Sep-2006 [5435] | It could be. But never miss a chance to find a deterministic View bug. :) |
Henrik 4-Sep-2006 [5436x3] | phew.. down to 500 lines of code |
REBOL [] stylize/master [ f: FACE WITH [ do-this: does [ insert tail pane: [] make face [ feel: make feel [ detect: func [face evt] [ if evt/type = 'up [ repeat i 5000 [ do-this ] ] evt ] ] pane: make face [] ] ] init: [do-this] ] ] view layout [ f 100x100 ] | |
This is about as small as it gets for now. Run the code and click the gray area to crash rebol | |
Anton 4-Sep-2006 [5439x5] | Mmm.. that code is asking for at least 143 MB for those 5000 faces. :) |
err... that's if a 100x100 bitmap is allocated for each of them.. | |
Ok, this still shows the bug: - removed stylize - removed layout and view - set object facets to none | |
view make face [ size: 10x10 do do-this: does [ insert tail pane: [] make face [ feel: make feel [ detect: func [face evt][ if evt/type = 'up [ repeat i 5000 [ do-this ] ] evt ] ] color: edge: font: para: none pane: make face [color: edge: font: para: feel: none] ] ] color: edge: font: para: none ] | |
Click the little 10x10 box once or twice to crash. | |
Gabriele 5-Sep-2006 [5444x2] | is that related to the inform bug you were talking about or something different? |
anyway - please RAMBO it. | |
Graham 5-Sep-2006 [5446] | is this just a recursive crash ? |
older newer | first last |