#54 Access violation when close a brace

open
nobody
None
2013-02-26
2013-02-26
qx0r
No

Just a little bug: if I try to close a brace in a blank indented line I get an access violation.

For example:

void fz()
{
while(1) //Before the "while" there is a Tab character
} //Here I deleted the auto Tab and wrote it again manually, adding a lined up closed brace will cause an address violation.

This seems happening everytime I add a closed brace when I delete the auto indent characters.
I have disabled symbol completion.

Sorry for my poor english, I hope to be helpful.


Application version: 5.4.0.0

Machine info

Platform : Windows NT
OS version : version 6.2 (build 9200)
Additional info:
Computer name :

The following error occured in version 5.4.0:
Access violation at address 001C34FC in module 'DevCpp.exe'. Read of address 00000003 (at address 0x001C34FC)

Please include a description of what you were doing before the error occured:

Stack trace:

0027A301 (00179301): TEAnalyzer.EHandler (ExceptionsAnalyzerFrm - 228)
001C34FC (000C24FC): TCustomSynEdit.ExecuteCommand (SynEdit - 7341)
001C34FC (000C24FC): TCustomSynEdit.ExecuteCommand (SynEdit - 7341)
001C34FC (000C24FC): TCustomSynEdit.ExecuteCommand (SynEdit - 7341)
001EA2E1 (000E92E1): TSynCppSyn.Next (SynHighlighterCpp - 1655)
001E9367 (000E8367): TSynCppSyn.SetLine (SynHighlighterCpp - 833)
001E937C (000E837C): TSynCppSyn.SetLine (SynHighlighterCpp - 833)
001E9384 (000E8384): TSynCppSyn.SetLine (SynHighlighterCpp - 834)
001C7BC7 (000C6BC7): TCustomSynEdit.GetHighlighterAttriAtRowColEx (SynEdit - 9762)
001C7BCF (000C6BCF): TCustomSynEdit.GetHighlighterAttriAtRowColEx (SynEdit - 9762)
001C7A44 (000C6A44): TCustomSynEdit.GetHighlighterAttriAtRowCol (SynEdit - 9726)
00272A6D (00171A6D): TEditor.PaintMatchingBrackets (editor - 1586)
00272D2C (00171D2C): TEditor.PaintMatchingBrackets (editor - 1621)
00272D34 (00171D34): TEditor.PaintMatchingBrackets (editor - 1623)
00272D71 (00171D71): TEditor.EditorPaintTransient (editor - 1629)
001BE0B9 (000BD0B9): TCustomSynEdit.ShowCaret (SynEdit - 4630)
001C7D5A (000C6D5A): TCustomSynEdit.DoOnPaintTransientEx (SynEdit - 9884)
001B093E (000AF93E): TSynEditStringList.Get (SynEditTextBuffer - 575)
001C34F6 (000C24F6): TCustomSynEdit.ExecuteCommand (SynEdit - 7341)
001C18BF (000C08BF): TCustomSynEdit.CommandProcessor (SynEdit - 6715)
001B8C13 (000B7C13): TCustomSynEdit.KeyPress (SynEdit - 2063)
001B8BC8 (000B7BC8): TCustomSynEdit.KeyPress (SynEdit - 2050)
001C0B42 (000BFB42): TCustomSynEdit.WndProc (SynEdit - 6019)
0027D1ED (0017C1ED): (devcpp - 166)
0027D208 (0017C208): (devcpp - 166)
0027CE50 (0017BE50): (devcpp - 105)
0027CE50 (0017BE50): (devcpp - 105)

Discussion

  • orwelldevcpp

    orwelldevcpp - 2013-02-26

    It's good news that this one is repeatable, but I can't figure out how to reproduce it.

    Would you mind sending my your settings file in its current state? It's called devcpp.ini and can, by default, be found at %APPDATA%\Dev-Cpp. That way, I may be able to find out what combination of settings causes this problem.

    Also, would you mind creating a chronological (ordered by time) list of things I need to do to reproduce this bug?

     
  • qx0r

    qx0r - 2013-02-26

    I will explain now how to reproduce an example:

    1) Open Dev-C++ (and close tips);
    2) Press "Ctrl+N" to create a new source file;
    3) Write first line of code: "void a() {" then press "Enter";
    4) Second line (autoindented): write "while(1)", press "Enter";
    5) Third line (autoindented): delete the auto Tab character and write it again, then write a closed brace; the access violation will appear.

    "devcpp.ini" attached.

     
  • orwelldevcpp

    orwelldevcpp - 2013-02-26

    Aha, it's the Trim Trailing Spaces horror again.

    A quick fix for now would be to disable that option.

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks