#35 ColumnRuler: Avoid hang up when opening a file


Using ColumnRuler 1.0.1 (cvs trunk build) and jEdit
4.3pre7 (svn trunk build), jEdit hangs up sometimes
when opening a file. This patch fixes this problem and
also fixes some minor bugs.

* Major bug fixes
* Avoid ArrayIndexOutOfBoundException in paint() by
testing isLoading() status of a buffer before
accessing its content.
* Fix a leak of the buffer read lock which leads to
a deadlock. This was sometimes caused by above
problem when opening a file.
* Minor bug fixes
* Avoid visual rattle on enabling the column ruler.
Previously, correct height was returned by
getPreferredSize() after the first paint().
* Make selection hightlighting in rectangular
selection mode follow the horizontal scroll.
* Accompanied code changes
* Minimize the duration of the buffer read lock.
* Remove cached metrics to simplify the codes.
* Remove unused private methods.
* ...and, some more trivial changes.

While loading a new buffer, the text area holds the
old selection. This state was introduced by r5222
which avoids a race condition. It might be better to
check buffer.isLoading() in JEditTextArea before
returning information about selections.


  • Kazutoshi Satoda

    cvs diff for ColumnRuler.java r1.5

  • Alan Ezust

    Alan Ezust - 2006-09-24
    • assigned_to: nobody --> bemace
  • Alan Ezust

    Alan Ezust - 2006-09-24

    Logged In: YES

    Brad, you're the author of the plugin. Would you like to
    give him direct commit privileges to the columnruler plugin?

  • Kazutoshi Satoda

    Logged In: YES

    One week passed. Is there anything I can do to promote
    this patch? Only waiting and pinging like this?

    I would like to see the next release of ColumnRuler
    plugin with jEdit 4.3final. The latest release has
    been left broken.

  • Alan Ezust

    Alan Ezust - 2006-10-02

    Logged In: YES

    I have no problems with you committing your changes directly
    to CVS. After that, it's just a matter of submitting it to
    plugin-central submissions, and then someone needs to
    release it.

    Step #1 is to commit it into CVS. Since brad is not replying
    to this, you have my permission to commit directly.

  • Alan Ezust

    Alan Ezust - 2006-10-02
    • assigned_to: bemace --> k_satoda
  • Kazutoshi Satoda

    Logged In: YES

    Committed. Thanks Alan.

    Can I continue working for ColumnRuler with this
    permission? I found some errors from ColumnRuler in
    Activity Log while testing my changes.

    Also, some texts seems to be updated before releasing.
    If I can work on it, please give me some advices or
    pointers to doc about plugin release procedure.

  • Kazutoshi Satoda

    • status: open --> closed-accepted
  • Alan Ezust

    Alan Ezust - 2006-10-03

    Logged In: YES

    Absolutely, you can continue improving column ruler as you
    see fit. With regards to plugin release procedure, all of
    the relevant docs are available from this (recently updated)


    Try out the new "create-plugin-announcement.bsh" macro that
    is in the "properties" group of macros, when you are ready
    to make an announcement.


Log in to post a comment.

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

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks