← Back to team overview

sikuli-driver team mailing list archive

[Bug 941127] [NEW] IDE freezes if parenthesis entered in search field

 

Public bug reported:

Sikuli Version X-1.0rc3 running on Mac OS X Version 10.7.3 - iMac -
Intel Core i5

Steps to reproduce:
1. Open Sikuli-IDE
2. Press Cmd-F
3. Type "example(" into search box

The IDE will freeze, preventing you from typing anything further for
several seconds. Once it unfreezes, entering any text other than
backspacing over the parenthesis mark will result in another temporary
freeze. Error text is included below. The IDE appears to be interpreting
the text in the search field as an erroneous regular expression, which
is nonstandard among OS X GUI applications and unexpected. Even if a
regular expression were intended, the freezing and immediate error make
it extremely difficult to type.

Temporary workaround:
Always use a backslash before searching for any string containing parentheses. E.g., to search for "example(foo)", search instead for "example\(foo\)".

[BEGIN ERROR TEXT]

Exception in thread "AWT-EventQueue-0" java.util.regex.PatternSyntaxException: Unclosed group near index 8
example(
 ^
 at java.util.regex.Pattern.error(Pattern.java:1713)
 at java.util.regex.Pattern.accept(Pattern.java:1571)
 at java.util.regex.Pattern.group0(Pattern.java:2533)
 at java.util.regex.Pattern.sequence(Pattern.java:1806)
 at java.util.regex.Pattern.expr(Pattern.java:1752)
 at java.util.regex.Pattern.compile(Pattern.java:1460)
 at java.util.regex.Pattern.(Pattern.java:1133)
 at java.util.regex.Pattern.compile(Pattern.java:823)
 at org.sikuli.ide.SikuliPane.search(SikuliPane.java:744)
 at org.sikuli.ide.SikuliIDE$FindAction._find(SikuliIDE.java:1264)
 at org.sikuli.ide.SikuliIDE$FindAction.findStr(SikuliIDE.java:1273)
 at org.sikuli.ide.SikuliIDE$4.keyReleased(SikuliIDE.java:524)
 at java.awt.AWTEventMulticaster.keyReleased(AWTEventMulticaster.java:243)
 at java.awt.Component.processKeyEvent(Component.java:6334)
 at javax.swing.JComponent.processKeyEvent(JComponent.java:2801)
 at java.

awt.Component.processEvent(Component.java:6150)
 at java.awt.Container.processEvent(Container.java:2085)
 at java.awt.Component.dispatchEventImpl(Component.java:4735)
 at java.awt.Container.dispatchEventImpl(Container.java:2143)
 at java.awt.Component.dispatchEvent(Component.java:4565)
 at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1850)
 at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:712)
 at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:990)
 at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:855)
 at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:676)
 at java.awt.Component.dispatchEventImpl(Component.java:4607)
 at java.awt.Container.dispatchEventImpl(Container.java:2143)
 at java.awt.Window.dispatchEventImpl(Window.java:2478)
 at java.awt.Component.dispatchEvent(Component.java:4565)
 at java.awt.EventQueue.dispat

chEventImpl(EventQueue.java:679)
 at java.awt.EventQueue.access$000(EventQueue.java:85)
 at java.awt.EventQueue$1.run(EventQueue.java:638)
 at java.awt.EventQueue$1.run(EventQueue.java:636)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
 at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
 at java.awt.EventQueue$2.run(EventQueue.java:652)
 at java.awt.EventQueue$2.run(EventQueue.java:650)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
 at java.awt.EventQueue.dispatchEvent(EventQueue.java:649)
 at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
 at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
 at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
 at jav

a.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
 at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
 at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Exception in thread "AWT-EventQueue-0" java.util.regex.PatternSyntaxException: Unclosed group near index 8
example(
 ^
 at java.util.regex.Pattern.error(Pattern.java:1713)
 at java.util.regex.Pattern.accept(Pattern.java:1571)
 at java.util.regex.Pattern.group0(Pattern.java:2533)
 at java.util.regex.Pattern.sequence(Pattern.java:1806)
 at java.util.regex.Pattern.expr(Pattern.java:1752)
 at java.util.regex.Pattern.compile(Pattern.java:1460)
 at java.util.regex.Pattern.(Pattern.java:1133)
 at java.util.regex.Pattern.compile(Pattern.java:823)
 at org.sikuli.ide.SikuliPane.search(SikuliPane.java:744)
 at org.sikuli.ide.SikuliIDE$FindAction._find(SikuliIDE.java:1264)
 at org.sikuli.ide.SikuliIDE$FindAction.findStr(SikuliIDE.java:1273)
 at org.sikuli.ide.SikuliIDE$4.keyReleased(SikuliIDE.java:524)
 

at java.awt.AWTEventMulticaster.keyReleased(AWTEventMulticaster.java:243)
 at java.awt.Component.processKeyEvent(Component.java:6334)
 at javax.swing.JComponent.processKeyEvent(JComponent.java:2801)
 at java.awt.Component.processEvent(Component.java:6150)
 at java.awt.Container.processEvent(Container.java:2085)
 at java.awt.Component.dispatchEventImpl(Component.java:4735)
 at java.awt.Container.dispatchEventImpl(Container.java:2143)
 at java.awt.Component.dispatchEvent(Component.java:4565)
 at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1850)
 at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:712)
 at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:990)
 at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:855)
 at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:676)
 at java.awt.Component.dispatchEventImpl(Component.java:4607

)
 at java.awt.Container.dispatchEventImpl(Container.java:2143)
 at java.awt.Window.dispatchEventImpl(Window.java:2478)
 at java.awt.Component.dispatchEvent(Component.java:4565)
 at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:679)
 at java.awt.EventQueue.access$000(EventQueue.java:85)
 at java.awt.EventQueue$1.run(EventQueue.java:638)
 at java.awt.EventQueue$1.run(EventQueue.java:636)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
 at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
 at java.awt.EventQueue$2.run(EventQueue.java:652)
 at java.awt.EventQueue$2.run(EventQueue.java:650)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
 at java.awt.EventQueue.dispatchEvent(EventQueue.java:649)
 at java.awt.EventDispatchThread.pumpOneEventForFilter

s(EventDispatchThread.java:296)
 at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
 at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
 at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
 at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
 at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

[END OF ERROR TEXT]

** Affects: sikuli
     Importance: Undecided
         Status: New


** Tags: ide

-- 
You received this bug notification because you are a member of Sikuli
Drivers, which is subscribed to Sikuli.
https://bugs.launchpad.net/bugs/941127

Title:
  IDE freezes if parenthesis entered in search field

Status in Sikuli:
  New

Bug description:
  Sikuli Version X-1.0rc3 running on Mac OS X Version 10.7.3 - iMac -
  Intel Core i5

  Steps to reproduce:
  1. Open Sikuli-IDE
  2. Press Cmd-F
  3. Type "example(" into search box

  The IDE will freeze, preventing you from typing anything further for
  several seconds. Once it unfreezes, entering any text other than
  backspacing over the parenthesis mark will result in another temporary
  freeze. Error text is included below. The IDE appears to be
  interpreting the text in the search field as an erroneous regular
  expression, which is nonstandard among OS X GUI applications and
  unexpected. Even if a regular expression were intended, the freezing
  and immediate error make it extremely difficult to type.

  Temporary workaround:
  Always use a backslash before searching for any string containing parentheses. E.g., to search for "example(foo)", search instead for "example\(foo\)".

  [BEGIN ERROR TEXT]

  Exception in thread "AWT-EventQueue-0" java.util.regex.PatternSyntaxException: Unclosed group near index 8
  example(
   ^
   at java.util.regex.Pattern.error(Pattern.java:1713)
   at java.util.regex.Pattern.accept(Pattern.java:1571)
   at java.util.regex.Pattern.group0(Pattern.java:2533)
   at java.util.regex.Pattern.sequence(Pattern.java:1806)
   at java.util.regex.Pattern.expr(Pattern.java:1752)
   at java.util.regex.Pattern.compile(Pattern.java:1460)
   at java.util.regex.Pattern.(Pattern.java:1133)
   at java.util.regex.Pattern.compile(Pattern.java:823)
   at org.sikuli.ide.SikuliPane.search(SikuliPane.java:744)
   at org.sikuli.ide.SikuliIDE$FindAction._find(SikuliIDE.java:1264)
   at org.sikuli.ide.SikuliIDE$FindAction.findStr(SikuliIDE.java:1273)
   at org.sikuli.ide.SikuliIDE$4.keyReleased(SikuliIDE.java:524)
   at java.awt.AWTEventMulticaster.keyReleased(AWTEventMulticaster.java:243)
   at java.awt.Component.processKeyEvent(Component.java:6334)
   at javax.swing.JComponent.processKeyEvent(JComponent.java:2801)
   at java.

  awt.Component.processEvent(Component.java:6150)
   at java.awt.Container.processEvent(Container.java:2085)
   at java.awt.Component.dispatchEventImpl(Component.java:4735)
   at java.awt.Container.dispatchEventImpl(Container.java:2143)
   at java.awt.Component.dispatchEvent(Component.java:4565)
   at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1850)
   at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:712)
   at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:990)
   at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:855)
   at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:676)
   at java.awt.Component.dispatchEventImpl(Component.java:4607)
   at java.awt.Container.dispatchEventImpl(Container.java:2143)
   at java.awt.Window.dispatchEventImpl(Window.java:2478)
   at java.awt.Component.dispatchEvent(Component.java:4565)
   at java.awt.EventQueue.dispat

  chEventImpl(EventQueue.java:679)
   at java.awt.EventQueue.access$000(EventQueue.java:85)
   at java.awt.EventQueue$1.run(EventQueue.java:638)
   at java.awt.EventQueue$1.run(EventQueue.java:636)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
   at java.awt.EventQueue$2.run(EventQueue.java:652)
   at java.awt.EventQueue$2.run(EventQueue.java:650)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
   at java.awt.EventQueue.dispatchEvent(EventQueue.java:649)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
   at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
   at jav

  a.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
   at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
  Exception in thread "AWT-EventQueue-0" java.util.regex.PatternSyntaxException: Unclosed group near index 8
  example(
   ^
   at java.util.regex.Pattern.error(Pattern.java:1713)
   at java.util.regex.Pattern.accept(Pattern.java:1571)
   at java.util.regex.Pattern.group0(Pattern.java:2533)
   at java.util.regex.Pattern.sequence(Pattern.java:1806)
   at java.util.regex.Pattern.expr(Pattern.java:1752)
   at java.util.regex.Pattern.compile(Pattern.java:1460)
   at java.util.regex.Pattern.(Pattern.java:1133)
   at java.util.regex.Pattern.compile(Pattern.java:823)
   at org.sikuli.ide.SikuliPane.search(SikuliPane.java:744)
   at org.sikuli.ide.SikuliIDE$FindAction._find(SikuliIDE.java:1264)
   at org.sikuli.ide.SikuliIDE$FindAction.findStr(SikuliIDE.java:1273)
   at org.sikuli.ide.SikuliIDE$4.keyReleased(SikuliIDE.java:524)
   

  at java.awt.AWTEventMulticaster.keyReleased(AWTEventMulticaster.java:243)
   at java.awt.Component.processKeyEvent(Component.java:6334)
   at javax.swing.JComponent.processKeyEvent(JComponent.java:2801)
   at java.awt.Component.processEvent(Component.java:6150)
   at java.awt.Container.processEvent(Container.java:2085)
   at java.awt.Component.dispatchEventImpl(Component.java:4735)
   at java.awt.Container.dispatchEventImpl(Container.java:2143)
   at java.awt.Component.dispatchEvent(Component.java:4565)
   at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1850)
   at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:712)
   at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:990)
   at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:855)
   at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:676)
   at java.awt.Component.dispatchEventImpl(Component.java:4607

  )
   at java.awt.Container.dispatchEventImpl(Container.java:2143)
   at java.awt.Window.dispatchEventImpl(Window.java:2478)
   at java.awt.Component.dispatchEvent(Component.java:4565)
   at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:679)
   at java.awt.EventQueue.access$000(EventQueue.java:85)
   at java.awt.EventQueue$1.run(EventQueue.java:638)
   at java.awt.EventQueue$1.run(EventQueue.java:636)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
   at java.awt.EventQueue$2.run(EventQueue.java:652)
   at java.awt.EventQueue$2.run(EventQueue.java:650)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
   at java.awt.EventQueue.dispatchEvent(EventQueue.java:649)
   at java.awt.EventDispatchThread.pumpOneEventForFilter

  s(EventDispatchThread.java:296)
   at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
   at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

  [END OF ERROR TEXT]

To manage notifications about this bug go to:
https://bugs.launchpad.net/sikuli/+bug/941127/+subscriptions


Follow ups

References