Jack Unrue wrote:
On 9/15/07, Jyrki Jaakkola jyrki@jjkola.tk wrote:
I have been testing textedit demo and I think may have found a bug. Whenever I enter at the most two characters to *textedit-control* the program halts with error EXCEPTION_ACCESS_VIOLATION. This doesn't happen if I enter at least three characters or if restart application (without restarting sbcl) after entering three characters.
I'm not able to reproduce this, either by typing into the edit control, or by changing the code to add a couple characters when textedit initializes.
I'm on SBCL; I see that Ken tried CLISP.
Which character set are you using? Does the problem occur even with just plain ASCII characters?
Writing text in just plain ascii (not even extended ascii), as far as I know. Emacs says that charset is iso-latin-1. It's even enough to remove the space which is in the text box by default.
Here is what I do before running the demo:
-- gf-startup.lisp -- (load "d:/lispbox-0.7/.sbcl/systems/graphic-forms/config.lisp") (gfsys::configure-asdf) (asdf:operate 'asdf:load-op :graphic-forms-uitoolkit) (load "d:/lispbox-0.7/.sbcl/systems/graphic-forms/tests.lisp") (gfsys::load-tests) ---------------------
I have only changed paths to right ones in config.lisp.
I tried now to run the demo from sbcl without emacs and slime and it behaves in same way. I even tried running the demo so that I first removed compiled files for graphic-forms and required dependencies.
Here is exact error message which I got when running sbcl without emacs:
------------------ * (gft:textedit) WARNING: #<WIN32-WARNING "init-common-controls failed": error code: 1309>
debugger invoked on a SIMPLE-ERROR: EXCEPTION_ACCESS_VIOLATION
Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name): 0: [ABORT] Exit debugger, returning to top level.
("bogus stack frame") 0] 0 ------------------
And here is back trace when running through slime:
------------------ EXCEPTION_ACCESS_VIOLATION [Condition of type SIMPLE-ERROR]
Restarts: 0: [ABORT-REQUEST] Abort handling SLIME request. 1: [ABORT] Exit debugger, returning to top level.
Backtrace: 0: ("bogus stack frame") 1: ("foreign function: #x7E3AEBCB") 2: ("foreign function: #x7E3AED69") 3: ("foreign function: #x7E3AF253") 4: ("foreign function: #x7E3A1004") 5: ("foreign function: #x7E389A6F") 6: ("foreign function: #x7E382FBB") 7: ("foreign function: #x7E38B408") 8: ("foreign function: #x7E368734") 9: ("foreign function: #x7E368816") 10: ("foreign function: #x7E36C63F") 11: ("foreign function: #x7E36F65D") 12: (GRAPHIC-FORMS.UITOOLKIT.SYSTEM::CALL-WINDOW-PROC #.(SB-SYS:INT-SAP #X7E38B3B4) #.(SB-SYS:INT-SAP #X00560F00) 256 46 22216705) 13: ((LAMBDA (SB-ALIEN::ARGS-POINTER SB-ALIEN::RESULT-POINTER FUNCTION)) 588983 588979 #<FUNCTION (LAMBDA (GRAPHIC-FORMS.UITOOLKIT.WIDGETS::HWND GRAPHIC-FORMS.UITOOLKIT.WIDGETS::MSG GRAPHIC-FORMS.UITOOLKIT.WIDGETS::WPARAM ...)) {A8777ED}>) 14: ("foreign function: #x4115B5") 15: ("foreign function: #x4025D3") 16: ("foreign function: #x210077B") 17: ("foreign function: #x7E368734") 18: ("foreign function: #x7E368816") 19: ("foreign function: #x7E3689CD") 20: ("foreign function: #x7E3696C7") 21: (GRAPHIC-FORMS.UITOOLKIT.SYSTEM::DISPATCH-MESSAGE #.(SB-SYS:INT-SAP #X0113FFC8)) 22: (GRAPHIC-FORMS.UITOOLKIT.WIDGETS:DEFAULT-MESSAGE-FILTER 1 #.(SB-SYS:INT-SAP #X0113FFC8)) 23: (GRAPHIC-FORMS.UITOOLKIT.WIDGETS:MESSAGE-LOOP #<FUNCTION GRAPHIC-FORMS.UITOOLKIT.WIDGETS:DEFAULT-MESSAGE-FILTER>) 24: (SB-INT:SIMPLE-EVAL-IN-LEXENV (GRAPHIC-FORMS.UITOOLKIT.TESTS:TEXTEDIT) #<NULL-LEXENV>) 25: (SWANK::EVAL-REGION "(gft:textedit) " T) 26: ((LAMBDA NIL)) 27: ((SB-PCL::FAST-METHOD SWANK-BACKEND:CALL-WITH-SYNTAX-HOOKS (T)) #<unused argument> #<unused argument> #<CLOSURE (LAMBDA NIL) {B4942ED}>) 28: (SWANK::CALL-WITH-BUFFER-SYNTAX #<CLOSURE (LAMBDA NIL) {B4942ED}>) 29: (SB-INT:SIMPLE-EVAL-IN-LEXENV (SWANK:LISTENER-EVAL "(gft:textedit) ") #<NULL-LEXENV>) 30: ((LAMBDA NIL)) 31: ((SB-PCL::FAST-METHOD SWANK-BACKEND:CALL-WITH-DEBUGGER-HOOK (T T)) #<unused argument> #<unused argument> #<FUNCTION SWANK:SWANK-DEBUGGER-HOOK> #<CLOSURE (LAMBDA NIL) {B4939ED}>) 32: ((LAMBDA NIL)) 33: ((SB-PCL::FAST-METHOD SWANK-BACKEND:CALL-WITH-DEBUGGER-HOOK (T T)) #<unused argument> #<unused argument> #<FUNCTION SWANK:SWANK-DEBUGGER-HOOK> #<FUNCTION (LAMBDA NIL) {B4C2405}>) 34: (SWANK::CALL-WITH-REDIRECTED-IO #<SWANK::CONNECTION {B406A11}> #<CLOSURE (LAMBDA NIL) {B4917B5}>) 35: (SWANK::CALL-WITH-CONNECTION #<SWANK::CONNECTION {B406A11}> #<FUNCTION (LAMBDA NIL) {B4C2405}>) 36: (SWANK::HANDLE-REQUEST #<SWANK::CONNECTION {B406A11}>) 37: (SWANK::SIMPLE-SERVE-REQUESTS #<SWANK::CONNECTION {B406A11}>) 38: (SWANK::SERVE-CONNECTION #<SB-BSD-SOCKETS:INET-SOCKET descriptor -1 {B243FC9}> NIL NIL :ISO-LATIN-1-UNIX) 39: (SWANK::SETUP-SERVER 0 #<CLOSURE (LAMBDA (SWANK::PORT)) {B1AB185}> NIL NIL :ISO-LATIN-1-UNIX) 40: (SWANK:START-SERVER "c:/DOCUME~1/JYRKIJ~1/LOCALS~1/Temp/slime.2572") 41: (SB-INT:SIMPLE-EVAL-IN-LEXENV (SWANK:START-SERVER "c:/DOCUME~1/JYRKIJ~1/LOCALS~1/Temp/slime.2572" :EXTERNAL-FORMAT :ISO-LATIN-1-UNIX) #<NULL-LEXENV>) 42: (INTERACTIVE-EVAL (SWANK:START-SERVER "c:/DOCUME~1/JYRKIJ~1/LOCALS~1/Temp/slime.2572" :EXTERNAL-FORMAT :ISO-LATIN-1-UNIX)) 43: (SB-IMPL::REPL-FUN NIL) 44: (SB-IMPL::REPL-FUN NIL) 45: ((LAMBDA NIL)) 46: ((LAMBDA NIL)) 47: (SB-IMPL::%WITH-REBOUND-IO-SYNTAX #<CLOSURE (LAMBDA NIL) {A5FBEE5}>) 48: (SB-IMPL::TOPLEVEL-REPL NIL) 49: (SB-IMPL::TOPLEVEL-INIT) 50: ((LABELS SB-IMPL::RESTART-LISP)) 51: ("foreign function: #x4115B5") 52: ("foreign function: #x40A56A") ------------------
I hope this helps.
Regards,
Jyrki Jaakkola