spv-light-decoder: Avoid GCC 11.x warning in decode_spvlb_halign().
[pspp] / src / ui / gui / psppire-lex-reader.c
index d8e53c446122b339b17cb61d80daacd24779800d..b34edf97b7ce430432e0f8af3a6755b6a6dc89c5 100644 (file)
@@ -54,11 +54,15 @@ lex_gtk_text_buffer_reader_cast (struct lex_reader *r)
 
 
 struct lex_reader *
-lex_reader_for_gtk_text_buffer (GtkTextBuffer *buffer, GtkTextIter start, GtkTextIter stop)
+lex_reader_for_gtk_text_buffer (GtkTextBuffer *buffer,
+                                GtkTextIter start, GtkTextIter stop,
+                                enum segmenter_mode syntax_mode)
 {
   struct lex_gtk_text_buffer_reader *r = xmalloc (sizeof *r);
 
   lex_reader_init (&r->reader, &lex_gtk_text_buffer_reader_class);
+  r->reader.syntax = syntax_mode;
+  r->reader.line_number = gtk_text_iter_get_line (&start) + 1;
 
   r->buffer = buffer;
   g_object_ref (buffer);
@@ -93,7 +97,7 @@ lex_gtk_text_buffer_read (struct lex_reader *r_, char *buf, size_t n,
       int offset = gtk_text_iter_get_offset (&iter);
       int end_offset = gtk_text_iter_get_offset (&r->stop);
 
-      if ( end_offset - offset < n)
+      if (end_offset - offset < n)
         n_chars = end_offset - offset;
 
       gtk_text_iter_set_offset (&iter, offset + n_chars);
@@ -122,6 +126,7 @@ lex_gtk_text_buffer_close (struct lex_reader *r_)
 
   g_object_unref (r->buffer);
   g_free (r->part);
+  g_free (r);
 }