SlickEdit Community

SlickEdit Product Discussion => SlickEdit® => Topic started by: evanratt on March 25, 2009, 08:34:26 PM

Title: (Minor) Slick-C stack with complete-next-match
Post by: evanratt on March 25, 2009, 08:34:26 PM
If I start up SE and try to run complete-next-match (or complete-prev-match) without running complete-next or complete-prev, I get the following stack trace. However, if I run complete-next or complete-prev, then undo back past that command, then run complete-next-match or complete-prev-match, I get a message in the status bar: "This command must be used after a word completion command.", which seems like the correct behavior.

Stack:
Code: [Select]
Invalid argument
stdprocs.ex 13959 _escape_re_chars(<empty>,)   p_window_id: 47   p_object: OI_EDITOR   p_name:
compword.ex 8219 complete_next_match()   p_window_id: 47   p_object: OI_EDITOR   p_name:


SlickEdit Version 14.0.0.5

Serial number: WB824242
Licensed number of users: Single user
License file: C:\Documents and Settings\All Users\Application Data\slickedit\14\slickedit.lic

Build Date: March 19, 2009
Emulation: Epsilon

OS: Windows XP
Version: 5.01.2600  Service Pack 2
Memory: 34% Load, 719MB/2094MB Physical, 142MB/2097MB Virtual

Installation Directory: C:\Program Files\SlickEdit 2009\ (non-removable drive,NTFS,380472MB free)
Configuration Directory: C:\Documents and Settings\evan_r\My Documents\My SlickEdit Config\14.0.0\ (non-removable drive,NTFS,380472MB free)

Title: Re: (Minor) Slick-C stack with complete-next-match
Post by: Dennis on March 25, 2009, 08:56:28 PM
Good catch, we'll fix this in 14.0.1.
Title: Re: (Minor) Slick-C stack with complete-next-match
Post by: Dennis on March 26, 2009, 02:57:11 PM
Actually, I have a question for you on this one.

If you are hitting complete-next-match before doing a complete-next or complete-prev, would you want it to:

(1) fail saying you have to do complete-next first (this was the original behavior)

(2) just call complete-next

(3) do a complete next, looking for an exact match of the symbol under the cursor.
     (this one sounds the most logical to me).
Title: Re: (Minor) Slick-C stack with complete-next-match
Post by: evanratt on March 26, 2009, 06:54:46 PM
To be totally honest, it's not a function I generally use, so I'm probably not the best person to ask :)  I was trying to do a complete-next, which is bound to Ctrl-Shift-. on my machine, and accidentally hit Ctrl-Shift-/, instead, which is bound to complete-next-match and caused the stack trace.

With that said, I think you're right, option 3 sounds pretty reasonable.

-Evan
Title: Re: (Minor) Slick-C stack with complete-next-match
Post by: evanratt on March 26, 2009, 06:58:11 PM
Uh oh, just got another stack when I was messing around, seeing how complete-next-match behaves. This time, I definitely called complete-prev first, but I was doing a bunch of complete-prev, complete-next, and complete-next-match calls in succession, so I can't say exactly what the sequence was. Here's the stack that came up:

Code: [Select]
Invalid argument
compword.ex 1361 compword:complete_nextprev(
   1:   [0]._typename()=Match
   1:   [0].word=VectorSet
   1:   [0].line-to-goto=205
   1:   [0].col=18
   1:   [1]._typename()=Match
   1:   [1].word=VectorScale
   1:   [1].line-to-goto=210
   1:   [1].col=20
   1:   [3]._typename()=Match
   1:   [3].word=<empty>
   1:   [3].line-to-goto=(null)
   1:   [3].col=(null)
   2:   1
   3:   
   p_window_id: 47
   p_object: OI_EDITOR
   p_name:
compword.ex 1719 complete_next()   p_window_id: 47   p_object: OI_EDITOR   p_name:
cua.ex 4965 _on_select()   p_window_id: 47   p_object: OI_EDITOR   p_name:
Title: Re: (Minor) Slick-C stack with complete-next-match
Post by: Dennis on March 26, 2009, 07:01:01 PM
Yeah, I had already discovered that one too.
Title: Re: (Minor) Slick-C stack with complete-next-match
Post by: Dennis on June 04, 2009, 08:43:59 PM
Just for clarification, the aforementioned fix did not make it into 14.0.1, but it will be in the next patch (14.0.2).  Thanks for your patience.