Author Topic: Fixed a bug in GetViewWithRegion.... sort of  (Read 2214 times)

mrothman

  • Senior Community Member
  • Posts: 122
  • Hero Points: 1
Fixed a bug in GetViewWithRegion.... sort of
« on: September 10, 2014, 03:06:08 PM »
SlickEdit 2013, linux, 18.0.1, latest  cumulative hot fix applied (29)
For a while, I've had a problem with diff selecting a symbol (or using line range).  The Slick-C error dialog pops up and I have a stack as follows:
 Invalid argument
diff.ex 1819 diff:GetViewWithRegion(93,117,158,-1, ,0)   p_window_id: 259   p_object: OI_EDITOR   p_name:
diff.ex 2836 DiffLoadFileAndGetRegionView2(/mathworks/devel/sbs/16/mrothman.Bpa.j148168/matlab/toolbox/matlab/codetools/src/codetools/type.cpp,-1,0,117,158,1,-1,97,-1,0,0,20140910134104000,
   13:   print_from_stream<typename StreamType>(StreamType &strm, const fl::ustring &desired_file, size_t start, size_t end, bool bPrintLineNumbers)
   14:   @27951
   p_window_id: 2
   p_object: OI_DESKTOP
   p_name:
diff.ex 11712 diff(,0)   p_window_id: 2   p_object: OI_DESKTOP   p_name:
picture.ex 2720 picture:_on_select_execute(diff,8192)   p_window_id: 414   p_object: OI_EDITOR   p_name:
picture.ex 2086 _tbCommand()   p_window_id: 414   p_object: OI_EDITOR   p_name:
picture.ex 2440 _ul2_picture.lbutton_down(0)   p_window_id: 82   p_object: OI_IMAGE   p_name:

I got tired of reverting to full file diff and attached the Slick-C debugger today.  I was able to quickly isolate that around line 400 of diff.e, in the function GetViewWithRegion, it diagnoses from the return value of "build_load_options" that there is an Undo (+U) setting, and then ends trying to set p_undo_steps to an empty string.  When I substitute just setting p_undo_steps to the hard-coded 32000 from a few lines earlier, the problem goes away.

So, I'm OK for now, but obviously I may have broken some other piece of functionality where the undo setting actually means something. I suppose I've ended up with some not great default for undo steps somewhere and that's what's getting passed in. I don't see an obvious place in the diff GUI where Undo steps are set, but I haven't really searched around.  And of course, I don't know if this undo setting, which is buried fairly deep in the code being run is even really about diff - it might be more general.

Dan

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2899
  • Hero Points: 153
Re: Fixed a bug in GetViewWithRegion.... sort of
« Reply #1 on: September 11, 2014, 12:32:32 PM »
This is fixed for the next beta.  I can send you an 18.0.1 fix if you like.