diff options
Diffstat (limited to 'debugger')
-rw-r--r-- | debugger/pos.ml | 23 | ||||
-rw-r--r-- | debugger/source.ml | 15 |
2 files changed, 5 insertions, 33 deletions
diff --git a/debugger/pos.ml b/debugger/pos.ml index 6c43f4339..995168648 100644 --- a/debugger/pos.ml +++ b/debugger/pos.ml @@ -20,23 +20,8 @@ open Source;; let get_desc ev = let loc = ev.ev_loc in - if loc.loc_start.pos_fname <> "" - then Printf.sprintf "file %s, line %d, characters %d-%d" - loc.loc_start.pos_fname loc.loc_start.pos_lnum - (loc.loc_start.pos_cnum - loc.loc_start.pos_bol + 1) - (loc.loc_end.pos_cnum - loc.loc_start.pos_bol + 1) - else begin - let filename = source_of_module ev.ev_loc.loc_start ev.ev_module in - try - let (start, line) = line_of_pos (get_buffer loc.loc_start ev.ev_module) - loc.loc_start.pos_cnum - in - Printf.sprintf "file %s, line %d, characters %d-%d" - filename line (loc.loc_start.pos_cnum - start + 1) - (loc.loc_end.pos_cnum - start + 1) - with Not_found | Out_of_range -> - Printf.sprintf "file %s, characters %d-%d" - filename (loc.loc_start.pos_cnum + 1) - (loc.loc_end.pos_cnum + 1) - end + Printf.sprintf "file %s, line %d, characters %d-%d" + loc.loc_start.pos_fname loc.loc_start.pos_lnum + (loc.loc_start.pos_cnum - loc.loc_start.pos_bol + 1) + (loc.loc_end.pos_cnum - loc.loc_start.pos_bol + 1) ;; diff --git a/debugger/source.ml b/debugger/source.ml index 0314cfacb..372b8be37 100644 --- a/debugger/source.ml +++ b/debugger/source.ml @@ -39,20 +39,7 @@ let source_of_module pos mdle = Debugger_config.load_path_for !Config.load_path in let fname = pos.Lexing.pos_fname in - if fname = "" then - let innermost_module = - try - let dot_index = String.rindex mdle '.' in - String.sub mdle (succ dot_index) (pred ((String.length mdle) - dot_index)) - with Not_found -> mdle in - let rec loop = - function - | [] -> raise Not_found - | ext :: exts -> - try find_in_path_uncap path (innermost_module ^ ext) - with Not_found -> loop exts - in loop source_extensions - else if Filename.is_implicit fname then + if Filename.is_implicit fname then find_in_path path fname else fname |