After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 746919 - Freeze when opening a larger number of files and searching in them
Freeze when opening a larger number of files and searching in them
Status: RESOLVED DUPLICATE of bug 127731
Product: gedit
Classification: Applications
Component: search and replace
3.14.x
Other Linux
: Normal major
: ---
Assigned To: Gedit maintainers
Gedit maintainers
Depends on:
Blocks:
 
 
Reported: 2015-03-27 22:59 UTC by André Klapper
Modified: 2015-04-18 09:17 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description André Klapper 2015-03-27 22:59:47 UTC
1. Open about 30 files, some being larger
2. Search in text
3. Freeze

$:andre\> gdb -p 12282
GNU gdb (GDB) Fedora 7.8.2-38.fc21
[...]
_gtk_text_btree_char_is_invisible (iter=iter@entry=0xbfed9354) at gtktextbtree.c:2510
2510	          if (tag->priv->invisible_set)
(gdb) thread apply all bt

Thread 1 (Thread 0xb5c7e880 (LWP 12282))

  • #0 _gtk_text_btree_char_is_invisible
    at gtktextbtree.c line 2510
  • #1 forward_chars_with_skipping
    at gtktextiter.c line 4462
  • #2 lines_match
    at gtktextiter.c line 4777
  • #3 gtk_text_iter_forward_search
  • #4 basic_forward_search
    at gtksourcesearchcontext.c line 788
  • #5 scan_subregion
    at gtksourcesearchcontext.c line 1554
  • #6 scan_all_region
    at gtksourcesearchcontext.c line 1596
  • #7 idle_scan_normal_search
    at gtksourcesearchcontext.c line 1726
  • #8 idle_scan_cb
    at gtksourcesearchcontext.c line 2077
  • #9 g_idle_dispatch
    at gmain.c line 5367
  • #10 g_main_dispatch
    at gmain.c line 3111
  • #11 g_main_context_dispatch
    at gmain.c line 3710
  • #12 g_main_context_iterate
    at gmain.c line 3781
  • #13 g_main_context_iteration
    at gmain.c line 3842
  • #14 g_application_run
    at gapplication.c line 2282
  • #15 main
    at gedit/gedit.c line 135

(gdb) list
2505	    {
2506	      if ((seg->type == &gtk_text_toggle_on_type)
2507	          || (seg->type == &gtk_text_toggle_off_type))
2508	        {
2509	          tag = seg->body.toggle.info->tag;
2510	          if (tag->priv->invisible_set)
2511	            {
2512	              tags[tag->priv->priority] = tag;
2513	              tagCnts[tag->priv->priority]++;
2514	            }

(gdb) info register
eax            0xa5b4fc0	173756352
ecx            0x9247b58	153385816
edx            0x27ad4	162516
ebx            0xb7441000	-1220276224
esp            0xbfed7310	0xbfed7310
ebp            0xbfed734c	0xbfed734c
esi            0x9247b40	153385792
edi            0x428ee	272622
eip            0xb6ff3ffd	0xb6ff3ffd <_gtk_text_btree_char_is_invisible+653>
eflags         0x200246	[ PF ZF IF ID ]
cs             0x73	115
ss             0x7b	123
ds             0x7b	123
es             0x7b	123
fs             0x0	0
gs             0x33	51
(gdb)
Comment 1 Sébastien Wilmet 2015-03-28 20:21:01 UTC
Does one of the file contain a very long line?
Comment 2 Sébastien Wilmet 2015-03-28 20:22:23 UTC
Maybe gedit used too much memory and the swap was being used.
Comment 3 André Klapper 2015-04-17 20:49:52 UTC
(In reply to Sébastien Wilmet from comment #1)
> Does one of the file contain a very long line?

Yes
Comment 4 Sébastien Wilmet 2015-04-18 09:17:19 UTC

*** This bug has been marked as a duplicate of bug 127731 ***