They show an error message and terminate SciTE since these functions should not be called by the part of the interface code to Scintilla which is used by scripts. The error message is shown on Windows but doesn't currently appear on GTK+ which doesn't handle fatal panics well.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
If they should not be called, why are they exposed at all?! Why couldn't these accesses just return nil instead of crashing loudly? Even an error box is wrong here; it's supposed to be a programmatic interface. Doing the equivalent of
forkey,valueinpairs(editor)doprint(key,value)end
(which I had to monkeypatch in anyway) should neither crash nor inconvenience the user in any way.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
They are exposed by some generic code that doesn't understand that the call it uses is dropping bits from (64-bit when on 64-bit platforms) pointers returned through a 32-bit interface.
If its important to you then handle the ScintillaFailure exception in the scripting layer.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
They show an error message and terminate SciTE since these functions should not be called by the part of the interface code to Scintilla which is used by scripts. The error message is shown on Windows but doesn't currently appear on GTK+ which doesn't handle fatal panics well.
If they should not be called, why are they exposed at all?! Why couldn't these accesses just return
nilinstead of crashing loudly? Even an error box is wrong here; it's supposed to be a programmatic interface. Doing the equivalent of(which I had to monkeypatch in anyway) should neither crash nor inconvenience the user in any way.
They are exposed by some generic code that doesn't understand that the call it uses is dropping bits from (64-bit when on 64-bit platforms) pointers returned through a 32-bit interface.
If its important to you then handle the ScintillaFailure exception in the scripting layer.
Fix committed as [516078].
Related
Commit: [516078]