mirror of
https://github.com/processone/ejabberd.git
synced 2024-12-02 16:37:52 +01:00
Prevent case_clause error when ejabber_odbc:sql_query returns {error, Reason}
SVN Revision: 1539
This commit is contained in:
parent
3c88ab49f0
commit
28c34a844a
@ -3,6 +3,8 @@
|
|||||||
* src/mod_privacy_odbc.erl: Prevent case_clause error when
|
* src/mod_privacy_odbc.erl: Prevent case_clause error when
|
||||||
ejabber_odbc:sql_query returns {error, Reason}
|
ejabber_odbc:sql_query returns {error, Reason}
|
||||||
* src/mod_vcard_odbc.erl: Likewise
|
* src/mod_vcard_odbc.erl: Likewise
|
||||||
|
* src/mod_last_odbc.erl: Likewise
|
||||||
|
* src/mod_offline_odbc.erl: Likewise
|
||||||
|
|
||||||
2008-08-25 Badlop <badlop@process-one.net>
|
2008-08-25 Badlop <badlop@process-one.net>
|
||||||
|
|
||||||
|
@ -114,8 +114,6 @@ process_sm_iq(From, To, #iq{type = Type, sub_el = SubEl} = IQ) ->
|
|||||||
get_last(IQ, SubEl, LUser, LServer) ->
|
get_last(IQ, SubEl, LUser, LServer) ->
|
||||||
Username = ejabberd_odbc:escape(LUser),
|
Username = ejabberd_odbc:escape(LUser),
|
||||||
case catch odbc_queries:get_last(LServer, Username) of
|
case catch odbc_queries:get_last(LServer, Username) of
|
||||||
{'EXIT', _Reason} ->
|
|
||||||
IQ#iq{type = error, sub_el = [SubEl, ?ERR_INTERNAL_SERVER_ERROR]};
|
|
||||||
{selected, ["seconds","state"], []} ->
|
{selected, ["seconds","state"], []} ->
|
||||||
IQ#iq{type = error, sub_el = [SubEl, ?ERR_SERVICE_UNAVAILABLE]};
|
IQ#iq{type = error, sub_el = [SubEl, ?ERR_SERVICE_UNAVAILABLE]};
|
||||||
{selected, ["seconds","state"], [{STimeStamp, Status}]} ->
|
{selected, ["seconds","state"], [{STimeStamp, Status}]} ->
|
||||||
@ -132,7 +130,9 @@ get_last(IQ, SubEl, LUser, LServer) ->
|
|||||||
_ ->
|
_ ->
|
||||||
IQ#iq{type = error,
|
IQ#iq{type = error,
|
||||||
sub_el = [SubEl, ?ERR_INTERNAL_SERVER_ERROR]}
|
sub_el = [SubEl, ?ERR_INTERNAL_SERVER_ERROR]}
|
||||||
end
|
end;
|
||||||
|
_ ->
|
||||||
|
IQ#iq{type = error, sub_el = [SubEl, ?ERR_INTERNAL_SERVER_ERROR]}
|
||||||
end.
|
end.
|
||||||
|
|
||||||
on_presence_update(User, Server, _Resource, Status) ->
|
on_presence_update(User, Server, _Resource, Status) ->
|
||||||
@ -152,8 +152,6 @@ store_last_info(User, Server, TimeStamp, Status) ->
|
|||||||
get_last_info(LUser, LServer) ->
|
get_last_info(LUser, LServer) ->
|
||||||
Username = ejabberd_odbc:escape(LUser),
|
Username = ejabberd_odbc:escape(LUser),
|
||||||
case catch odbc_queries:get_last(LServer, Username) of
|
case catch odbc_queries:get_last(LServer, Username) of
|
||||||
{'EXIT', _Reason} ->
|
|
||||||
not_found;
|
|
||||||
{selected, ["seconds","state"], []} ->
|
{selected, ["seconds","state"], []} ->
|
||||||
not_found;
|
not_found;
|
||||||
{selected, ["seconds","state"], [{STimeStamp, Status}]} ->
|
{selected, ["seconds","state"], [{STimeStamp, Status}]} ->
|
||||||
@ -162,7 +160,9 @@ get_last_info(LUser, LServer) ->
|
|||||||
{ok, TimeStamp, Status};
|
{ok, TimeStamp, Status};
|
||||||
_ ->
|
_ ->
|
||||||
not_found
|
not_found
|
||||||
end
|
end;
|
||||||
|
_ ->
|
||||||
|
not_found
|
||||||
end.
|
end.
|
||||||
|
|
||||||
remove_user(User, Server) ->
|
remove_user(User, Server) ->
|
||||||
|
@ -116,6 +116,8 @@ loop(Host, MaxOfflineMsgs) ->
|
|||||||
case catch odbc_queries:add_spool(Host, Query) of
|
case catch odbc_queries:add_spool(Host, Query) of
|
||||||
{'EXIT', Reason} ->
|
{'EXIT', Reason} ->
|
||||||
?ERROR_MSG("~p~n", [Reason]);
|
?ERROR_MSG("~p~n", [Reason]);
|
||||||
|
{error, Reason} ->
|
||||||
|
?ERROR_MSG("~p~n", [Reason]);
|
||||||
_ ->
|
_ ->
|
||||||
ok
|
ok
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user