]> granicus.if.org Git - ejabberd/commitdiff
Fix odbc update_t and update insert case return value
authorvesvalo <vesvalo@mail.ru>
Fri, 8 Aug 2014 09:26:16 +0000 (13:26 +0400)
committervesvalo <vesvalo@mail.ru>
Fri, 8 Aug 2014 09:26:16 +0000 (13:26 +0400)
src/odbc_queries.erl

index e0637f84019d16547f7784aba835c9bdc361360d..09549c0a2d48edd9022df1ff5161b0778eaee9a1 100644 (file)
@@ -97,10 +97,14 @@ update_t(Table, Fields, Vals, Where) ->
        of
       {updated, 1} -> ok;
       _ ->
-         ejabberd_odbc:sql_query_t([<<"insert into ">>, Table,
+               Res = ejabberd_odbc:sql_query_t([<<"insert into ">>, Table,
                                     <<"(">>, join(Fields, <<", ">>),
                                     <<") values ('">>, join(Vals, <<"', '">>),
-                                    <<"');">>])
+                                    <<"');">>]),
+               case Res of
+                       {updated,1} -> ok;
+                       _ -> Res
+               end
     end.
 
 update(LServer, Table, Fields, Vals, Where) ->
@@ -115,10 +119,14 @@ update(LServer, Table, Fields, Vals, Where) ->
        of
       {updated, 1} -> ok;
       _ ->
-         ejabberd_odbc:sql_query(LServer,
+               Res = ejabberd_odbc:sql_query(LServer,
                                  [<<"insert into ">>, Table, <<"(">>,
                                   join(Fields, <<", ">>), <<") values ('">>,
-                                  join(Vals, <<"', '">>), <<"');">>])
+                                  join(Vals, <<"', '">>), <<"');">>]),
+               case Res of
+                       {updated,1} -> ok;
+                       _ -> Res
+               end                
     end.
 
 %% F can be either a fun or a list of queries