Bug 895196 - [a11y] Freeze on filtering in Calc
Summary: [a11y] Freeze on filtering in Calc
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libreoffice
Version: 7.0
Hardware: Unspecified
OS: Unspecified
Target Milestone: rc
: ---
Assignee: David Tardon
QA Contact: Desktop QE
Depends On:
TreeView+ depends on / blocked
Reported: 2013-01-14 19:17 UTC by Matěj Cepl
Modified: 2014-06-18 04:41 UTC (History)
4 users (show)

Clone Of:
Last Closed: 2014-06-13 11:49:08 UTC

Attachments (Terms of Use)
testing spreadsheet (27.66 KB, application/vnd.oasis.opendocument.spreadsheet)
2013-01-14 19:17 UTC, Matěj Cepl
no flags Details
screencast of the reproduction (1.68 MB, video/webm)
2013-01-14 19:19 UTC, Matěj Cepl
no flags Details

Description Matěj Cepl 2013-01-14 19:17:44 UTC
Created attachment 678399 [details]
testing spreadsheet

Description of problem:
When I try to filter records in the attached spreadsheet by the street LibreOffice freezes and has to be killed by SIGTERM.

Switching off a11y makes Calc working again.

Version-Release number of selected component (if applicable):

How reproducible:
100% (3 out of 3 attempts)

Steps to Reproduce:
1. see above (and also attached screencast)
Actual results:
non-functional filtering

Expected results:
working filtering

Additional info:

Comment 1 Matěj Cepl 2013-01-14 19:19:54 UTC
Created attachment 678400 [details]
screencast of the reproduction

Traceback when Calc is frozen:

Loaded symbols for /usr/lib64/libreoffice/ure/lib/proxyfac.uno.so
0x00007f52dc2bae21 in g_type_check_instance_is_a () from /lib64/libgobject-2.0.so.0
Missing separate debuginfos, use: debuginfo-install GConf2-3.2.5-4.el7.x86_64 PackageKit-gtk3-module-0.8.6-1.el7.x86_64 adwaita-gtk2-theme-3.6.2-1.el7.x86_64 at-spi2-atk-2.6.2-1.el7.x86_64 at-spi2-core-2.6.3-1.el7.x86_64 atk-2.6.0-1.el7.x86_64 avahi-libs-0.6.31-6.el7.x86_64 cairo-1.12.8-2.el7.x86_64 clucene-contribs-lib- clucene-core- cups-libs-1.5.4-22.el7.x86_64 dbus-glib-0.100-1.el7.x86_64 dbus-libs-1.6.8-3.el7.x86_64 expat-2.1.0-4.el7.x86_64 fontconfig-2.10.2-1.el7.x86_64 freetype-2.4.10-2.4.el7.x86_64 gdk-pixbuf2-2.26.5-2.el7.x86_64 glib2-2.34.2-1.el7.x86_64 glibc-2.16-29.el7.x86_64 gnome-keyring-3.6.2-2.el7.x86_64 gnutls-2.12.21-2.el7.x86_64 graphite2-1.1.1-3.el7.x86_64 gtk2-2.24.13-1.el7.x86_64 harfbuzz-0.9.10-1.el7.x86_64 hunspell-1.3.2-8.el7.x86_64 hyphen-2.8.5-2.el7.x86_64 keyutils-libs-1.5.5-3.el7.x86_64 krb5-libs-1.11-0.el7.beta1.0.x86_64 lcms2-2.4-1.el7.x86_64 libICE-1.0.8-2.el7.x86_64 libSM-1.2.1-2.el7.x86_64 libX11-1.5.0-3.el7.x86_64 libXau-1.0.6-4.el7.x86_64 libXcomposite-0.4.3-4.el7.x86_64 libXcursor-1.1.13-2.el7.x86_64 libXdamage-1.1.3-4.el7.x86_64 libXext-1.3.1-2.el7.x86_64 libXfixes-5.0-3.el7.x86_64 libXi-1.6.1-2.el7.x86_64 libXinerama-1.1.2-2.el7.x86_64 libXrandr-1.4.0-1.el7.x86_64 libXrender-0.9.7-2.el7.x86_64 libXxf86vm-1.1.2-2.el7.x86_64 libcanberra-0.30-2.el7.x86_64 libcanberra-gtk2-0.30-2.el7.x86_64 libcom_err-1.42.6-2.el7.x86_64 libdb-5.3.21-3.el7.x86_64 libdrm-2.4.40-2.el7.x86_64 libffi-3.0.11-3.el7.x86_64 libgcc-4.7.2-8.el7.x86_64 libgcrypt-1.5.0-8.el7.x86_64 libgpg-error-1.10-3.el7.x86_64 libicu-49.1.1-5.el7.x86_64 libjpeg-turbo-1.2.1-4.el7.x86_64 libogg-1.3.0-2.el7.x86_64 libpng-1.5.13-1.el7.x86_64 libselinux-2.1.12-7.el7.x86_64 libstdc++-4.7.2-8.el7.x86_64 libtasn1-2.14-1.el7.x86_64 libtdb-1.2.10-16.el7.x86_64 libtool-ltdl-2.4.2-10.el7.x86_64 libuuid-2.22.1-2.4.el7.x86_64 libvorbis-1.3.3-3.el7.x86_64 libxcb-1.9-1.el7.x86_64 libxml2-2.9.0-3.el7.x86_64 libxslt-1.1.27-2.el7.x86_64 mesa-libEGL-9.0.1-3.el7.x86_64 mesa-libGL-9.0.1-3.el7.x86_64 mesa-libgbm-9.0.1-3.el7.x86_64 mesa-libglapi-9.0.1-3.el7.x86_64 mythes-1.2.3-3.el7.x86_64 nss-softokn-freebl-3.14-5.el7.x86_64 p11-kit-0.14-1.el7.x86_64 pango-1.32.3-1.el7.x86_64 pcre-8.32-1.el7.x86_64 pixman-0.26.2-5.el7.x86_64 systemd-libs-195-15.el7.x86_64 xz-libs-5.1.2-2alpha.el7.x86_64 zlib-1.2.7-9.el7.x86_64
(gdb) thread apply all backtrace
(gdb) thread apply all backtrace

Thread 5 (Thread 0x7f52e4ecb700 (LWP 23885)):
#0  0x00007f52f10a9952 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f52f211ef09 in rtl_cache_wsupdate_wait (seconds=10)
    at /usr/src/debug/libreoffice-
#2  rtl_cache_wsupdate_all (arg=<optimized out>)
    at /usr/src/debug/libreoffice-
#3  0x00007f52f10a5d15 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f52f13ac46d in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f52d5af9700 (LWP 23887)):
#0  0x00007f52f13ad12d in accept () from /lib64/libc.so.6
#1  0x00007f52f2113150 in osl_acceptPipe (pPipe=0x286e2b0)
    at /usr/src/debug/libreoffice-
#2  0x00007f52f1ed288a in accept (Connection=..., this=0x286dd48)
    at /usr/src/debug/libreoffice-
#3  desktop::OfficeIPCThread::execute (this=<optimized out>)
    at /usr/src/debug/libreoffice-
#4  0x00007f52effb0d76 in salhelper::Thread::run (this=0x286dd20)
    at /usr/src/debug/libreoffice-
#5  0x00007f52effb0fea in osl::threadFunc (param=0x286dd30)
    at /usr/src/debug/libreoffice-
#6  0x00007f52f2118bd7 in osl_thread_start_Impl (pData=0x286d8d0)
    at /usr/src/debug/libreoffice-
#7  0x00007f52f10a5d15 in start_thread () from /lib64/libpthread.so.0
#8  0x00007f52f13ac46d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f52c7fff700 (LWP 23888)):
#0  0x00007f52f13a398d in poll () from /lib64/libc.so.6
#1  0x00007f52dbb1d3f5 in poll (__timeout=1000, __nfds=1, __fds=0x7f52c7ffea20)
    at /usr/include/bits/poll2.h:46
#2  x11::SelectionManager::dispatchEvent (this=this@entry=0x7f52d67ab008, 
    at /usr/src/debug/libreoffice-
#3  0x00007f52dbb1d5d6 in x11::SelectionManager::run (pThis=0x7f52d67ab008)
    at /usr/src/debug/libreoffice-
#4  0x00007f52f2118bd7 in osl_thread_start_Impl (pData=0x2a6a320)
    at /usr/src/debug/libreoffice-
#5  0x00007f52f10a5d15 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f52f13ac46d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f52d62fa700 (LWP 23901)):
#0  0x00007f52f13a398d in poll () from /lib64/libc.so.6
#1  0x00007f52dbb03ab6 in poll (__timeout=-1, __nfds=2, __fds=0x7f52b7578f28)
    at /usr/include/bits/poll2.h:46
#2  ICEConnectionWorker ()
    at /usr/src/debug/libreoffice-
#3  0x00007f52f2118bd7 in osl_thread_start_Impl (pData=0x2a9fef0)
    at /usr/src/debug/libreoffice-
#4  0x00007f52f10a5d15 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f52f13ac46d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f52f2538980 (LWP 23884)):
---Type <return> to continue, or q <return> to quit---
#0  0x00007f52dc2bae21 in g_type_check_instance_is_a () from /lib64/libgobject-2.0.so.0
#1  0x00007f52dd4ddce4 in atk_object_get_parent () from /lib64/libatk-1.0.so.0
#2  0x00007f52d9963746 in gail_focus_tracker () from /usr/lib64/gtk-2.0/modules/libgail.so
#3  0x00007f52dd4e5639 in atk_focus_tracker_notify () from /lib64/libatk-1.0.so.0
#4  0x00007f52de083026 in atk_wrapper_focus_idle_handler (data=0x7f52b684e178)
    at /usr/src/debug/libreoffice-
#5  0x00007f52dbfafa55 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#6  0x00007f52dbfafd88 in g_main_context_iterate.isra.24 () from /lib64/libglib-2.0.so.0
#7  0x00007f52dbfafe44 in g_main_context_iteration () from /lib64/libglib-2.0.so.0

#8  0x00007f52de08a611 in GtkData::Yield (this=0x1d9ac40, bWait=true, 
    bHandleAllCurrentEvents=<optimized out>)
    at /usr/src/debug/libreoffice-
#9  0x00007f52edbdd6f4 in ImplYield (i_bAllEvents=false, i_bWait=true)
    at /usr/src/debug/libreoffice-
#10 Application::Yield (i_bAllEvents=false)
    at /usr/src/debug/libreoffice-
#11 0x00007f52edbdd797 in Application::Execute ()
    at /usr/src/debug/libreoffice-
#12 0x00007f52f1eaa450 in desktop::Desktop::Main (this=0x7ffff74bd000)
    at /usr/src/debug/libreoffice-
#13 0x00007f52edbe5ba9 in ImplSVMain ()
    at /usr/src/debug/libreoffice-
#14 0x00007f52edbe5c35 in SVMain ()
    at /usr/src/debug/libreoffice-
#15 0x00007f52f1ed6c15 in soffice_main ()
    at /usr/src/debug/libreoffice-
#16 0x00000000004006fb in sal_main ()
    at /usr/src/debug/libreoffice-
#17 main (argc=<optimized out>, argv=<optimized out>)
    at /usr/src/debug/libreoffice-

Comment 3 David Tardon 2013-01-15 10:31:41 UTC
cannot reproduce on F-18 with libreoffice-calc-

Comment 4 Caolan McNamara 2013-02-13 15:40:30 UTC
reproducible for me, a loop in the accessibility hierarchy

Comment 5 Caolan McNamara 2013-02-15 16:15:34 UTC
the parent window of a popup is its frame/border window
the a11y context of a frame/border window is the a11y context of its first child (the popup)
the a11y parent is gotten via the context
so the a11y parent of the popup is the popup, which is a bit screwy

Comment 7 Caolan McNamara 2013-02-19 16:49:41 UTC
fix backported and committed to rawhide/f18.

caolanm->dtardon: can you take care of syncing RHEL7 up to date with this one

Comment 9 Vadim Rutkovsky 2014-02-25 16:02:45 UTC
Filtering works fine for me in libreoffice-calc-

Comment 10 Ludek Smid 2014-06-13 11:49:08 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.

Note You need to log in before you can comment on or make changes to this bug.