blender crashes on python code completion

Bug #1421977 reported by Thomas Meyer
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Blender
Fix Released
Undecided
Unassigned
Python
New
Undecided
Unassigned
blender (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Release: ubuntu 14.10 64 bit
blender version: 2.70a-2ubuntu3

Open the python console with SHIFT F4, type a blender python class, e.g. bpy., and press CTRL BLANK for code completion. Blender crashes with a segmentation fault. The expected behavior is showing a list of attributes/methods of the python class.

If you need more informations like gdb backtrace or logfiles, please have a look on this blender bug report: https://developer.blender.org/T43491

We - that meens some of the guys discussing this bug - think it's a library compatibility problem which can be solved by a rebuild. As I found another segmentation fault - if you mark an object, press 'm' to move it to another layer, and click on the layer symbol - I think that the actual blender build on ubuntu is a little bit unstable.

I reproduced both segfaults with an ubuntustudio 14.10 live dvd.

Revision history for this message
ideasman42 (ideasman42) wrote :

@Thomas Meyer, the issue with moving layers was an assert, fixed already (debug builds only), and unrelated to Python auto completion.

I tried to redo this bug in Ubuntu 14.04, 32bit, but it worked without problems.

Revision history for this message
ideasman42 (ideasman42) wrote :

Found the cause of the bug, it is a library conflict with gnureadline and libedit: https://developer.blender.org/T43491#291613

Revision history for this message
ideasman42 (ideasman42) wrote :

Update, worked around the bug: https://developer.blender.org/T43491#291744

But the bug still exists: just run this in the text editor:

    import readline

I'm afraid this needs to be solved by whoever maintains the Blender package, so the libraries aren't in conflict.

On Arch Linux, for example, there is no problem so its just a matter of finding what the important difference is which makes Ubuntu load libedit, when ArchLinux doesnt.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in blender (Ubuntu):
status: New → Confirmed
Revision history for this message
Emilio (emilio-moretti) wrote :

Same here, but this time loading ipython qtconsole embedded in an app.
The code looks similar to this:
http://stackoverflow.com/questions/29421936/cant-quit-pyqt5-application-with-embedded-ipython-qtconsole/30068103#30068103

It's actually way more extensive, but it crashes when it tries to create the kernel.

I used this workaround to "fix" it:
sudo mv /usr/lib/python3.4/lib-dynload/readline.cpython-34m-x86_64-linux-gnu.so /usr/lib/python3.4/lib-dynload/readline.cpython-34m-x86_64-linux-gnu.so.bkp

It works fine now.

Revision history for this message
Emilio (emilio-moretti) wrote :

I forgot to add the details:

Ubuntu 15.04 x64
python 3.43
ipython 4.0.0
qtconsole 4.0.0

Both, ipython and qtconsole were installed from "pip3"

Nazo (lovesyao)
Changed in blender:
status: New → Fix Released
Nazo (lovesyao)
no longer affects: libedit (Ubuntu)
no longer affects: readline (Ubuntu)
Nazo (lovesyao)
Changed in blender (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.