src/Builder4/Editor.bjs
authorAlan Knowles <alan@roojs.com>
Fri, 15 May 2015 07:40:07 +0000 (15:40 +0800)
committerAlan Knowles <alan@roojs.com>
Fri, 15 May 2015 07:40:07 +0000 (15:40 +0800)
src/Builder4/Editor.vala

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

index cf4b9ec..a719e03 100644 (file)
@@ -88,7 +88,7 @@
          "xtype" : "SourceBuffer",
          "bool check_running" : false,
          "$ xns" : "Gtk",
-         "| bool highlightErrorsJson" : "(Json.Object obj) {\n\n    if (!obj.has_member(\"ERR\")) {\n        return true;\n    }\n    var err = obj.get_object_member(\"ERR\");\n    \n    if (!err.has_member(_this.file.path)) {\n        return true;\n    }\n    var lines = err.get_object_member(_this.file.path);\n    \n    var offset = 0;\n    if (obj.has_member(\"line_offset\")) {\n        offset = obj.get_int_member(\"line_offset\");\n    }\n    \n    \n    var tlines = this.el.get_line_count ();\n     Gtk.TextIter iter;\n    lines.foreach_member((obj, line, node)) {\n        \n        \n    //        print(\"get inter\\n\");\n            var eline = int.parse(line) - offset;\n            if (eline > tlines) {\n                continue;\n            }\n            this.el.get_iter_at_line( out iter, eline);\n            //print(\"mark line\\n\");\n            this.el.create_source_mark(lines.get_string_member(line), \"error\", iter);\n        } )\n        return false;\n    \n\n\n\n\n}\n"
+         "| bool highlightErrorsJson" : "(Json.Object obj) {\n\n    if (!obj.has_member(\"ERR\")) {\n        return true;\n    }\n    var err = obj.get_object_member(\"ERR\");\n    \n    if (!err.has_member(_this.file.path)) {\n        return true;\n    }\n    var lines = err.get_object_member(_this.file.path);\n    \n    var offset = 0;\n    if (obj.has_member(\"line_offset\")) {\n        offset = obj.get_int_member(\"line_offset\");\n    }\n    \n    \n    var tlines = this.el.get_line_count ();\n     Gtk.TextIter iter;\n    lines.foreach_member((obj, line, node)) {\n        \n        \n    //        print(\"get inter\\n\");\n            var eline = int.parse(line) - offset;\n            if (eline > tlines || eline < 0) {\n                continue;\n            }\n            this.el.get_iter_at_line( out iter, eline);\n            //print(\"mark line\\n\");\n            this.el.create_source_mark(lines.get_string_member(line), \"error\", iter);\n        } );\n        return false;\n    \n\n\n\n\n}\n"
         }
        ]
       }
index b0f7892..191322e 100644 (file)
@@ -504,13 +504,13 @@ public class Editor : Object
                 
             //        print("get inter\n");
                     var eline = int.parse(line) - offset;
-                    if (eline > tlines) {
+                    if (eline > tlines || eline < 0) {
                         continue;
                     }
                     this.el.get_iter_at_line( out iter, eline);
                     //print("mark line\n");
                     this.el.create_source_mark(lines.get_string_member(line), "error", iter);
-                } )
+                } );
                 return false;