Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rounded path - Crash on simple rectangular path when clicking Apply. #153

Closed
gyger opened this issue Aug 8, 2018 · 6 comments
Closed

Rounded path - Crash on simple rectangular path when clicking Apply. #153

gyger opened this issue Aug 8, 2018 · 6 comments

Comments

@gyger
Copy link

gyger commented Aug 8, 2018

I try to create a ROUND_PATH from a guide path and I get the following crash (see the attached screenshot.) when I press Apply plus OK. If I just press OK, the curve is accepted and everything works fine.

image

If I press Ok and Apply again, I get the following "Problem Details". Pressing OK closes the program.

Exception code: 0xc0000005
Program Version: KLayout 0.25.3 (2018-05-04 r887bcb3) x86

Backtrace:
0x1948032 - (klayout_laybasic.dll) +1081394
0x6c0fb0d2 - (klayout_edt.dll) +241874
0x66ac3517 - (Qt5Core.dll) +1586455
0x25ffe2f - (Qt5Widgets.dll) +1048111
0x2601076 - (Qt5Widgets.dll) +1052790
0x25ffb03 - (Qt5Widgets.dll) +1047299
0x2601203 - (Qt5Widgets.dll) +1053187
0x25667ea - (Qt5Widgets.dll) +419818
0x66aa32cf - (Qt5Core.dll) +1454799
0x66aa380c - (Qt5Core.dll) +1456140
0x12067f7 - (Qt5Gui.dll) +157687
0x1207f88 - (Qt5Gui.dll) +163720
0x7465be6b - (USER32.dll) +245355
0x7465833a - (USER32.dll) +230202
0x74657bee - (USER32.dll) +228334
0x746579d0 - (USER32.dll) +227792
0x66ae7705 - (Qt5Core.dll) +1734405
0xeab4f77 - (qwindows.dll) +479095
0x66aa2a8a - (Qt5Core.dll) +1452682
0x66aa97e2 - (Qt5Core.dll) +1480674
0x63ece058 - (klayout_lay.dll) +57432
0x63ed26bb - (klayout_lay.dll) +75451
0x401f5d - (klayout_app.exe) +8029
0x67d417be - (klayout_rba.dll) +6078
0x710ddf59 - (msvcrt-ruby240.dll) +1433433
0x710db74d - (msvcrt-ruby240.dll) +1423181
0x710db74d - (msvcrt-ruby240.dll) +1423181
0x710ee62e - (msvcrt-ruby240.dll) +1500718
0x710eeb0e - (msvcrt-ruby240.dll) +1501966
0x710deea4 - (msvcrt-ruby240.dll) +1437348
0x710def42 - (msvcrt-ruby240.dll) +1437506
0x710e3d8d - (msvcrt-ruby240.dll) +1457549
0x70f9cb2e - (msvcrt-ruby240.dll) +117550
0x710db74d - (msvcrt-ruby240.dll) +1423181
0x70f9cb2e - (msvcrt-ruby240.dll) +117550
0x710db74d - (msvcrt-ruby240.dll) +1423181
0x70f9cb2e - (msvcrt-ruby240.dll) +117550
0x710ace77 - (msvcrt-ruby240.dll) +1232503
0x710962bd - (msvcrt-ruby240.dll) +1139389
0x7105a52f - (msvcrt-ruby240.dll) +894255
0x71096b79 - (msvcrt-ruby240.dll) +1141625
0x70fccfc2 - (msvcrt-ruby240.dll) +315330
0x710e8212 - (msvcrt-ruby240.dll) +1475090
0x70fe06ad - (msvcrt-ruby240.dll) +394925
0x401a91 - (klayout_app.exe) +6801
0x40885d - (klayout_app.exe) +34909
0x4013e3 - (klayout_app.exe) +5091
0x747c8484 - (KERNEL32.DLL) +99460
0x77da2fea - (ntdll.dll) +405482
0x77da2fba - (ntdll.dll) +405434

@klayoutmatthias
Copy link
Collaborator

Hi,

thanks for reporting this issue. I'm trying to reproduce the issue but I failed so far.

What is the radius you're using? And what's your OS?

Thanks,

Matthias

@gyger
Copy link
Author

gyger commented Aug 12, 2018

I am on Windows 10, x64 and on the newest version. The radius I use is 30um. I try to create a small file where I can see the issue and will post it here.

@klayoutmatthias
Copy link
Collaborator

Thanks. I'm on Linux, but I can try on W10.

This is what works for me:

  • run KLayout in editor mode
  • create a new layout
  • create a new layer 1/0
  • draw some path on 1/0
  • select this path - for example an L-shaped one
  • use "Edit/Selection/Convert To PCell"
  • select the PCell (not the path) and double click
  • select radius 30, press "Ok"
  • select the path as guiding shape, double click
  • enter the values you show in your screenshot
  • Press Apply, then Ok

I do not see the error you get, but maybe it's about the order how things are done.

Regards,

Matthias

@lukasc-ubc
Copy link

I've seen this error many times before during the past year.

It doesn't happen all the time. To get it to crash, I edited the vertices several times, each time pressing Apply. Here is a crash screenshot. Note that I didn't get the mp_v messages, which I previously had as well.

image

Signal number: 11
Address: 0x58
Program Version: KLayout 0.25.3 (2018-05-05 r9708d35d)

Backtrace:
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/libklayout_lay.0.dylib +0x21934a _ZN3lay25enable_signal_handler_guiEb
/usr/lib/system/libsystem_platform.dylib +0x1f5a _sigtramp
/usr/lib/system/libsystem_platform.dylib +0xffffffe08fd8e570 _sigtramp
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/libklayout_edt.0.dylib +0x8d6b2 _ZN3edt17EditGridConverter17from_string_pickyERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERN2db6vectorIdEE
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/libklayout_laybasic.0.dylib +0x2bf2c2 _ZThn16_N3lay14PropertiesPageD0Ev
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtCore.framework/Versions/5/QtCore +0x21f36b _ZN11QMetaObject8activateEP7QObjectiiPPv
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0x107d2f _ZNK15QAbstractButton11isCheckableEv
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0x107bc7 _ZNK15QAbstractButton11isCheckableEv
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0x108e2f _ZN15QAbstractButton17mouseReleaseEventEP11QMouseEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0x4ac3f _ZN7QWidget5eventEP6QEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0xfffd _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0x12d8d _ZN12QApplication6notifyEP7QObjectP6QEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/libklayout_lay.0.dylib +0x55b3b _ZN3lay14GuiApplication6notifyEP7QObjectP6QEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtCore.framework/Versions/5/QtCore +0x1ee798 _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0x10960 _ZN19QApplicationPrivate14sendMouseEventEP7QWidgetP11QMouseEventS1_S1_PS1_R8QPointerIS0_Eb
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0x6ab0a _ZN14QDesktopWidget11qt_metacallEN11QMetaObject4CallEiPPv
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0x697f5 _ZN14QDesktopWidget11qt_metacallEN11QMetaObject4CallEiPPv
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0xfffd _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets +0x1139a _ZN12QApplication6notifyEP7QObjectP6QEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/libklayout_lay.0.dylib +0x55b3b _ZN3lay14GuiApplication6notifyEP7QObjectP6QEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtCore.framework/Versions/5/QtCore +0x1ee798 _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtGui.framework/Versions/5/QtGui +0x2e66b _ZN22QGuiApplicationPrivate17processMouseEventEPN29QWindowSystemInterfacePrivate10MouseEventE
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtGui.framework/Versions/5/QtGui +0x15b8b _ZN22QWindowSystemInterface22sendWindowSystemEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/PlugIns/platforms/libqcocoa.dylib +0x2a22e qt_plugin_instance
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/PlugIns/platforms/libqcocoa.dylib +0x2aaf1 qt_plugin_instance
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0xa3a61 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0x15d47c __CFRunLoopDoSource0
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0x864c0 __CFRunLoopDoSources0
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0x8593d __CFRunLoopRun
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation +0x851a3 CFRunLoopRunSpecific
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox +0x2fd96 RunCurrentEventLoopInMode
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox +0x2fa0f ReceiveNextEventCommon
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox +0x2f884 _BlockUntilNextEventMatchingListInModeWithFilter
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit +0x41a73 _DPSNextEvent
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit +0x7d7e34 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:]
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit +0x36885 -[NSApplication run]
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/PlugIns/platforms/libqcocoa.dylib +0x298dd qt_plugin_instance
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtCore.framework/Versions/5/QtCore +0x1ea2be _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/QtCore.framework/Versions/5/QtCore +0x1eee91 _ZN16QCoreApplication4execEv
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/libklayout_lay.0.dylib +0x56607 _ZN3lay14GuiApplication4execEv
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/libklayout_lay.0.dylib +0x5514f _ZN3lay15ApplicationBase3runEv
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/MacOS/klayout +0xb11b
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/libklayout_rba.0.dylib +0x225df _ZN3rba15RubyInterpreter10initializeERiPPcPFiS1_S3_E
/System/Library/Frameworks/Ruby.framework/Versions/2.3/Ruby +0x12baba rb_vm_fstring_table
/System/Library/Frameworks/Ruby.framework/Versions/2.3/Ruby +0x11d486 rb_vm_get_insns_address_table
/System/Library/Frameworks/Ruby.framework/Versions/2.3/Ruby +0x128012 rb_iseq_eval
/System/Library/Frameworks/Ruby.framework/Versions/2.3/Ruby +0x3516e ruby_exec_node
/System/Library/Frameworks/Ruby.framework/Versions/2.3/Ruby +0x35061 ruby_run_node
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/Frameworks/libklayout_rba.0.dylib +0x22583 _ZN3rba15RubyInterpreter10initializeERiPPcPFiS1_S3_E
/Applications/klayout-0.25.3-macOS-HighSierra-1-Qt5101brew-Py364-9708d35.app/Contents/MacOS/klayout +0xaa2b
/usr/lib/system/libdyld.dylib +0x1015 start
/usr/lib/system/libdyld.dylib +0xffff80008d2e9001 start

@klayoutmatthias
Copy link
Collaborator

Hi Lukas,

thanks for sharing the stack trace. Frankly I'm a bit puzzled as it indicates a crash in a function where a crash hardly is possible. But every stack trace is a piece of the solution. I'll try to track this issue down.

Best regards,

Matthias

@klayoutmatthias
Copy link
Collaborator

Hi all,

thanks again for reporting this issue. I was able to locate the root cause thanks to valgrind.
I'll provide a fix.

Matthias

netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this issue Sep 22, 2018
0.25.4          (2018-08-25):
* Bugfix: KLayout/klayout#121
       Issue with multiple reads of GDS2 layouts including PCells
* Bugfix: KLayout/klayout#134
       Error in cell.fill_region caused by big polygon with
       spikes
* Bugfix: KLayout/klayout#139
       Libraries have not been reassigned when loading a GDS file
       from command line (does not happen on File/Open)
* Bugfix: KLayout/klayout#141
       Issue with RBA::QHostAddress (ambiguous overload) on Qt5
* Bugfix: KLayout/klayout#142
       Issue with RBA::RecursiveShapeIterator#region=
* Bugfix: KLayout/klayout#144
       The Salt package descriptions are not shown with Motif
       style
* Bugfix: KLayout/klayout#148
       Wrong font is used
* Bugfix: KLayout/klayout#152
       Shapes#size reported a wrong shape count in viewer mode
* Bugfix: KLayout/klayout#153
       Application crash when editing guiding shape properties
* Bugfix: KLayout/klayout#155
       Program freezes after replacing nothing by something in
       Macro editor
* Bugfix: KLayout/klayout#157
       "Replace cell with ..." rejected cell names with a library
       prefix
* Bugfix: KLayout/klayout#158
       Repaint issue on cell context
* Bugfix: KLayout/klayout#159
       Tech specific macros and DRC scripts were not shown in tech
       manager
* Bugfix: 8 bit indexed GIF images can be used for package icons now
* Enhancement: Provide a way to specify the type of a macro
       This feature is mainly useful for command line arguments.
       If you run KLayout with "klayout -b -r myscript"
       it will not be able to determine the type of macro without
       a suffix.

       You can now explicitly specify a certain type by
       giving the suffix implicitly like: "klayout -b -r myscript[rb]"
       This will read "myscript" but pretend it was "myscript.rb"
       and execute it as Ruby script.

       This feature is handy if you need to run a file with a
       specific interpreter but cannot modify the file name.
* Enhancement: Selection now shows PCell display names
       Before, the internal name was shown for instances
* Enhancement: There is an option in the View menu to show or hide markers
       Markers may hide layout under them. With this feature you can
       quickly disable all markers and the layout becomes visible.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants