[Bug 1161818] Re: QTextBlockUserData loses its data

Julian Taylor jtaylor.debian at googlemail.com
Fri Mar 29 13:24:05 UTC 2013


That will be fixed next release due soon, just comment it out to reproduce the other issue
you also have to change QtGui.QTextDocument() to self.document() in /usr/lib/python3/dist-packages/IPython/frontend/qt/console/pygments_highlighter.py:97 to fully fix this issue

** Description changed:

  in pyqt4 4.10 QTextBlockUserData is broken.
  see
  http://www.riverbankcomputing.com/pipermail/pyqt/2013-March/032457.html
+ 
+ 
+ from PyQt4.QtGui import QTextDocument, QTextBlockUserData
+ doc=QTextDocument()
+ print doc.firstBlock().userData()
+ data=QTextBlockUserData()
+ data.value = 123
+ doc.firstBlock().setUserData(data)
+ del data
+ import gc
+ gc.collect()
+ print doc.firstBlock().userData().value
+ 
+ AttributeError: 'QTextBlockUserData' object has no attribute 'value'
  
  example in archive
  ipython qtconsole
  type:
  if 1:
-   print 1
+   print 1
  
  and you get lots of tracebacks in the terminal:
-   File "/usr/lib/python2.7/dist-packages/IPython/frontend/qt/console/pygments_highlighter.py", line 107, in highlightBlock
-     self._lexer._saved_state_stack = prev_data.syntax_stack
+   File "/usr/lib/python2.7/dist-packages/IPython/frontend/qt/console/pygments_highlighter.py", line 107, in highlightBlock
+     self._lexer._saved_state_stack = prev_data.syntax_stack
  AttributeError: 'QTextBlockUserData' object has no attribute 'syntax_stack'
  
  it also breaks ninja ide.

** Description changed:

  in pyqt4 4.10 QTextBlockUserData is broken.
  see
  http://www.riverbankcomputing.com/pipermail/pyqt/2013-March/032457.html
  
- 
  from PyQt4.QtGui import QTextDocument, QTextBlockUserData
  doc=QTextDocument()
- print doc.firstBlock().userData()
  data=QTextBlockUserData()
  data.value = 123
  doc.firstBlock().setUserData(data)
  del data
  import gc
  gc.collect()
  print doc.firstBlock().userData().value
  
  AttributeError: 'QTextBlockUserData' object has no attribute 'value'
  
  example in archive
  ipython qtconsole
  type:
  if 1:
    print 1
  
  and you get lots of tracebacks in the terminal:
    File "/usr/lib/python2.7/dist-packages/IPython/frontend/qt/console/pygments_highlighter.py", line 107, in highlightBlock
      self._lexer._saved_state_stack = prev_data.syntax_stack
  AttributeError: 'QTextBlockUserData' object has no attribute 'syntax_stack'
  
  it also breaks ninja ide.

-- 
You received this bug notification because you are a member of Kubuntu
Bugs, which is subscribed to python-qt4 in Ubuntu.
https://bugs.launchpad.net/bugs/1161818

Title:
  QTextBlockUserData loses its data

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ipython/+bug/1161818/+subscriptions




More information about the kubuntu-bugs mailing list