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

crash: Macro Development, Add Location #591

Closed
lukasc-ubc opened this issue Jun 20, 2020 · 5 comments
Closed

crash: Macro Development, Add Location #591

lukasc-ubc opened this issue Jun 20, 2020 · 5 comments
Assignees
Labels

Comments

@lukasc-ubc
Copy link

@lukasc-ubc lukasc-ubc commented Jun 20, 2020

Hi @klayoutmatthias,

I would like to report that I am getting repeated crashes when trying to Add Location to the Macro Development, in the Python tab. I am trying to add Project folders. I can add them, but as soon as I click on the folder, I get a Signal 11 crash.

This is on Mac OSX. I've tried several versions I have installed (same as #589), including 0.26.5 and 0.26.6. It wasn't a problem in earlier versions (I have many Project folders that work). It is only new folders that seem to cause the crash.

After about an hour, the backtrace is not complete... screenshot:
image

@klayoutmatthias
Copy link
Collaborator

@klayoutmatthias klayoutmatthias commented Jun 27, 2020

Hi @lukasc-ubc,

I'm beginning to understand which question to ask first on MacOS :)

Which is the build variant you're using?

Thanks,

Matthias

@klayoutmatthias
Copy link
Collaborator

@klayoutmatthias klayoutmatthias commented Jun 27, 2020

Ah ... I can see this problem on Linux now too.

The problem in somewhere inside the QTreeViews and their interaction with my tree models. It's kind of difficult to reproduce as it's an invalid memory access and it's surely not there since a few releases.

But I have some theory where to look at.

Thanks,

Matthias

@lukasc-ubc
Copy link
Author

@lukasc-ubc lukasc-ubc commented Jun 27, 2020

@klayoutmatthias klayoutmatthias self-assigned this Jun 28, 2020
klayoutmatthias added a commit that referenced this issue Jun 28, 2020
The main reason was that the QSortFilterProxyModel is very sensitive
to the order of signals it receives from the proxy model.

In this case, dataChanged() must not be send between layoutAboutToBeChanged()
and layoutChanged(). This happened implicitly during load() of a macro while
scanning the freshly added folder.
klayoutmatthias added a commit that referenced this issue Jun 29, 2020
…-up in macro editor. Tied to the tip window now - if this is dismissed, no template selection dialog will be shown.
@klayoutmatthias
Copy link
Collaborator

@klayoutmatthias klayoutmatthias commented Jun 29, 2020

I could fix the crash (signal ordering problem in Qt) and was able to provide a way to dismiss the template selection dialog (is tied to the tip window now - if this is dismissed, the template selection won't be shown again).

The copy & paste issue however seems to be MacOS specific and a Qt related issue.

klayoutmatthias added a commit that referenced this issue Jul 3, 2020
* Fixed #591 (crash on Macro/Add Location)

The main reason was that the QSortFilterProxyModel is very sensitive
to the order of signals it receives from the proxy model.

In this case, dataChanged() must not be send between layoutAboutToBeChanged()
and layoutChanged(). This happened implicitly during load() of a macro while
scanning the freshly added folder.

* Fixed another part of #591: ability to disable template selection pop-up in macro editor. Tied to the tip window now - if this is dismissed, no template selection dialog will be shown.
@klayoutmatthias
Copy link
Collaborator

@klayoutmatthias klayoutmatthias commented Jul 5, 2020

A can confirm the copy / paste issue, but it seems to be related to the way Qt treats the keys. If I assume VirtualBox maps my "Windows" key to Mac's "Command" key, then Copy/Paste of Text seems to work with Command+C, Command+V from the edit widgets while Copy/Paste of geometry, cells and others seems to work with Control+C, Control+V.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants