From 4616117f171d96faa6027f89f4d8697815e14566 Mon Sep 17 00:00:00 2001
From: Kevin Atkinson <kevina@cs.utah.edu>
Date: Wed, 1 Feb 2012 01:35:11 -0700
Subject: [PATCH] Bug fix in lookup_byte_offset.

---
 src/comp/syntax/codemap.rs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/comp/syntax/codemap.rs b/src/comp/syntax/codemap.rs
index b9251d6d3d5..11dcef85a36 100644
--- a/src/comp/syntax/codemap.rs
+++ b/src/comp/syntax/codemap.rs
@@ -143,7 +143,7 @@ fn lookup_byte_offset(cm: codemap::codemap, chpos: uint)
 {
     fn lookup(pos: file_pos) -> uint { ret pos.ch; }
     let {fm,line} = option::get(lookup_line(cm,chpos,lookup));
-    let line_offset = fm.lines[line].byte;
+    let line_offset = fm.lines[line].byte - fm.start_pos.byte;
     let col = chpos - fm.lines[line].ch;
     let col_offset = str::byte_len_range(*fm.src, line_offset, col);
     ret {fm: fm, pos: line_offset + col_offset};