The code in wrap_line() used a GtkTextIter after an insertion invalidated
it. In some setups, with a sufficiently long pasted text, this caused a
Gtk-WARNING and a subsequent segfault. This commit fixes the problem by
removing the offending code. In my testing, this didn't cause a UI
regression.
Reported by Bastián Díaz in the thread starting at
http://lists.gnu.org/archive/html/bug-gnu-pspp/2013-10/msg00005.html
/* PSPPIRE - a graphical user interface for PSPP.
/* PSPPIRE - a graphical user interface for PSPP.
- Copyright (C) 2007, 2010, 2011, 2012 Free Software Foundation
+ Copyright (C) 2007, 2010, 2011, 2012, 2013 Free Software Foundation
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
if ( chars > DOC_LINE_LENGTH )
{
GtkTextIter line_fold = *iter;
if ( chars > DOC_LINE_LENGTH )
{
GtkTextIter line_fold = *iter;
gtk_text_iter_set_line_offset (&line_fold, DOC_LINE_LENGTH);
gtk_text_buffer_insert (buffer, &line_fold, "\r\n", 2);
gtk_text_iter_set_line_offset (&line_fold, DOC_LINE_LENGTH);
gtk_text_buffer_insert (buffer, &line_fold, "\r\n", 2);
-
- cursor = line_fold;
- gtk_text_iter_forward_to_line_end (&cursor);
-
- gtk_text_buffer_place_cursor (buffer, &cursor);