diff options
author | Peti Gömöri <[email protected]> | 2012-01-24 13:12:55 +0100 |
---|---|---|
committer | Dan Gudmundsson <[email protected]> | 2012-01-24 13:12:55 +0100 |
commit | 37afbf0fddc24df4ad2a664386fe010fd6ce5d42 (patch) | |
tree | 0c67e3510d4821bd9435bf0dff6b068ec18ddb90 | |
parent | 27275b4059621d5c7d5f9e3b14ab333d2362aee1 (diff) | |
download | otp-37afbf0fddc24df4ad2a664386fe010fd6ce5d42.tar.gz otp-37afbf0fddc24df4ad2a664386fe010fd6ce5d42.tar.bz2 otp-37afbf0fddc24df4ad2a664386fe010fd6ce5d42.zip |
[observer] Fixed regexp error handling
-rw-r--r-- | lib/observer/src/observer_tv_table.erl | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/lib/observer/src/observer_tv_table.erl b/lib/observer/src/observer_tv_table.erl index 31d5f3d632..3093f740a7 100644 --- a/lib/observer/src/observer_tv_table.erl +++ b/lib/observer/src/observer_tv_table.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2011. All Rights Reserved. +%% Copyright Ericsson AB 2011-2012. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -401,13 +401,17 @@ handle_info({refresh, Min, Max}, State = #state{grid=Grid}) -> wxListCtrl:refreshItems(Grid, Min, Max), {noreply, State}; handle_info({error, Error}, State = #state{frame=Frame}) -> - Dlg = wxMessageDialog:new(Frame, Error), + ErrorStr = + try io_lib:format("~ts", [Error]), Error + catch _:_ -> io_lib:format("~p", [Error]) + end, + Dlg = wxMessageDialog:new(Frame, ErrorStr), wxMessageDialog:showModal(Dlg), wxMessageDialog:destroy(Dlg), {noreply, State}; -handle_info(Event, State) -> - io:format("~p:~p, handle info ~p\n", [?MODULE, ?LINE, Event]), +handle_info(_Event, State) -> + %% io:format("~p:~p, handle info ~p\n", [?MODULE, ?LINE, _Event]), {noreply, State}. terminate(_Event, #state{pid=Pid, attrs=Attrs}) -> @@ -588,12 +592,15 @@ search([Str, Row, Dir0, CaseSens], true -> []; false -> [caseless] end, - {ok, Re} = re:compile(Str, Opt), Dir = case Dir0 of true -> 1; false -> -1 end, - Res = search(Row, Dir, Re, Table), + Res = case re:compile(Str, Opt) of + {ok, Re} -> + search(Row, Dir, Re, Table); + {error, _} -> false + end, Parent ! {self(), Res}, S#holder{search=Res}. |