src/Builder4/Editor.bjs
authorAlan Knowles <alan@roojs.com>
Thu, 9 May 2024 14:07:22 +0000 (22:07 +0800)
committerAlan Knowles <alan@roojs.com>
Thu, 9 May 2024 14:07:22 +0000 (22:07 +0800)
src/Builder4/Editor.vala

src/Builder4/Editor.bjs
src/Builder4/Editor.vala

index e1c334f..1217d32 100644 (file)
     "\t\t\tvar tag = diag.steal_data<Gtk.TextTag>(\"tag\");",
     "\t\t\tbuf.tag_table.remove(tag);",
     "",
-    "\t\t\tvar mark = diag.steal_data<GtkSource.Mark>(\"mark\");",
-    "\t\t\tbuf.delete_mark(mark);",
+    "\t\t\tGtkSource.Mark mark = diag.steal_data<GtkSource.Mark>(\"mark\");",
+    "\t\t\tif (mark != null) {",
+    "\t\t\t\tbuf.delete_mark(mark);",
+    "\t\t\t}",
     "\t\t\t ",
     "\t\t}",
     "\t\t",
     "\t\tbuf.tag_table.remove(tag);",
     "\t\t",
     " ",
-    "\t\tvar mark = diag.steal_data<GtkSource.Mark>(\"mark\");",
+    "\t\tGtkSource.Mark mark = diag.steal_data<GtkSource.Mark>(\"mark\");",
     "\t\tif (mark != null) {",
     "\t\t\tbuf.delete_mark(mark);",
     "\t\t\tdel.add(diag);",
index a45bf20..91e992e 100644 (file)
@@ -313,8 +313,10 @@ public class Editor : Object
                                var tag = diag.steal_data<Gtk.TextTag>("tag");
                                buf.tag_table.remove(tag);
        
-                               var mark = diag.steal_data<GtkSource.Mark>("mark");
-                               buf.delete_mark(mark);
+                               GtkSource.Mark mark = diag.steal_data<GtkSource.Mark>("mark");
+                               if (mark != null) {
+                                       buf.delete_mark(mark);
+                               }
                                 
                        }
                        
@@ -428,7 +430,7 @@ public class Editor : Object
                        buf.tag_table.remove(tag);
                        
         
-                       var mark = diag.steal_data<GtkSource.Mark>("mark");
+                       GtkSource.Mark mark = diag.steal_data<GtkSource.Mark>("mark");
                        if (mark != null) {
                                buf.delete_mark(mark);
                                del.add(diag);