                         output.stdout = output.stdout.slice(0,i)
                         for x in shas.split('\n')
                             v = x.split(/\s+/)
+                            if v.length != 2
+                                continue
+                            #if DEBUG then console.log(v, sagetex_file, @_sagetex_file_sha)
                             if v[1] == sagetex_file and v[0] != @_sagetex_file_sha
                                 @_need_to_run.sage = sagetex_file
                                 @_sagetex_file_sha = v[0]

        @pdf_updated = true
        if not opts.latex_command?
            opts.latex_command = @default_tex_command()
        @_need_to_run = {latex: true}
        log = ''
        status = opts.status


                    if not_latexmk and log.indexOf(no_bbl) != -1
                        @_need_to_run.bibtex = true

                    log += "\n\n#{misc.to_json(@_need_to_run)}\n@_sagetex_file_sha: #{@_sagetex_file_sha}"

                    @last_latex_log = log
                    cb?(false, log)

    _run_sage: (target, cb) =>
        # don't run sage if target is false
        if underscore.isBoolean(target) and not target
            cb()
        if not target?
            target = @base_filename + '.sagetex.sage'
        @_exec
