This simplifies little bits of code here and there.
Signed-off-by: Ben Pfaff <[email protected]>
---
lib/ovsdb-error.c | 8 ++++++++
lib/ovsdb-error.h | 1 +
ovsdb/execution.c | 4 +---
ovsdb/jsonrpc-server.c | 24 ++++++------------------
4 files changed, 16 insertions(+), 21 deletions(-)
diff --git a/lib/ovsdb-error.c b/lib/ovsdb-error.c
index 82dc10966e99..dd08de687251 100644
--- a/lib/ovsdb-error.c
+++ b/lib/ovsdb-error.c
@@ -221,6 +221,14 @@ ovsdb_error_to_json(const struct ovsdb_error *error)
return json;
}
+struct json *
+ovsdb_error_to_json_free(struct ovsdb_error *error)
+{
+ struct json *json = ovsdb_error_to_json(error);
+ ovsdb_error_destroy(error);
+ return json;
+}
+
char *
ovsdb_error_to_string(const struct ovsdb_error *error)
{
diff --git a/lib/ovsdb-error.h b/lib/ovsdb-error.h
index ff9b889a8687..77a60e074f9c 100644
--- a/lib/ovsdb-error.h
+++ b/lib/ovsdb-error.h
@@ -66,6 +66,7 @@ struct ovsdb_error *ovsdb_error_clone(const struct
ovsdb_error *)
char *ovsdb_error_to_string(const struct ovsdb_error *);
char *ovsdb_error_to_string_free(struct ovsdb_error *);
struct json *ovsdb_error_to_json(const struct ovsdb_error *);
+struct json *ovsdb_error_to_json_free(struct ovsdb_error *);
const char *ovsdb_error_get_tag(const struct ovsdb_error *);
diff --git a/ovsdb/execution.c b/ovsdb/execution.c
index 1ebe7a772e47..c6feafd7d552 100644
--- a/ovsdb/execution.c
+++ b/ovsdb/execution.c
@@ -120,9 +120,7 @@ ovsdb_execute(struct ovsdb *db, const struct ovsdb_session
*session,
"as first parameter");
}
- results = ovsdb_error_to_json(error);
- ovsdb_error_destroy(error);
- return results;
+ return ovsdb_error_to_json_free(error);
}
x.db = db;
diff --git a/ovsdb/jsonrpc-server.c b/ovsdb/jsonrpc-server.c
index 27cbd8449e3f..aec6603958d7 100644
--- a/ovsdb/jsonrpc-server.c
+++ b/ovsdb/jsonrpc-server.c
@@ -730,8 +730,8 @@ ovsdb_jsonrpc_lookup_db(const struct ovsdb_jsonrpc_session
*s,
return db;
error:
- *replyp = jsonrpc_create_error(ovsdb_error_to_json(error), request->id);
- ovsdb_error_destroy(error);
+ *replyp = jsonrpc_create_error(ovsdb_error_to_json_free(error),
+ request->id);
return NULL;
}
@@ -781,7 +781,6 @@ ovsdb_jsonrpc_session_lock(struct ovsdb_jsonrpc_session *s,
enum ovsdb_lock_mode mode)
{
struct ovsdb_lock_waiter *waiter;
- struct jsonrpc_msg *reply;
struct ovsdb_error *error;
struct ovsdb_session *victim;
const char *lock_name;
@@ -820,9 +819,7 @@ ovsdb_jsonrpc_session_lock(struct ovsdb_jsonrpc_session *s,
return jsonrpc_create_reply(result, request->id);
error:
- reply = jsonrpc_create_error(ovsdb_error_to_json(error), request->id);
- ovsdb_error_destroy(error);
- return reply;
+ return jsonrpc_create_error(ovsdb_error_to_json_free(error), request->id);
}
static void
@@ -857,7 +854,6 @@ ovsdb_jsonrpc_session_unlock(struct ovsdb_jsonrpc_session
*s,
struct jsonrpc_msg *request)
{
struct ovsdb_lock_waiter *waiter;
- struct jsonrpc_msg *reply;
struct ovsdb_error *error;
const char *lock_name;
@@ -884,9 +880,7 @@ ovsdb_jsonrpc_session_unlock(struct ovsdb_jsonrpc_session
*s,
return jsonrpc_create_reply(json_object_create(), request->id);
error:
- reply = jsonrpc_create_error(ovsdb_error_to_json(error), request->id);
- ovsdb_error_destroy(error);
- return reply;
+ return jsonrpc_create_error(ovsdb_error_to_json_free(error), request->id);
}
static struct jsonrpc_msg *
@@ -1361,9 +1355,7 @@ error:
ovsdb_jsonrpc_monitor_destroy(m);
}
- json = ovsdb_error_to_json(error);
- ovsdb_error_destroy(error);
- return jsonrpc_create_error(json, request_id);
+ return jsonrpc_create_error(ovsdb_error_to_json_free(error), request_id);
}
static struct ovsdb_error *
@@ -1406,7 +1398,6 @@ ovsdb_jsonrpc_monitor_cond_change(struct
ovsdb_jsonrpc_session *s,
struct ovsdb_jsonrpc_monitor *m;
struct json *monitor_cond_change_reqs;
struct shash_node *node;
- struct json *json;
if (json_array(params)->n != 3) {
error = ovsdb_syntax_error(params, NULL, "invalid parameters");
@@ -1490,10 +1481,7 @@ ovsdb_jsonrpc_monitor_cond_change(struct
ovsdb_jsonrpc_session *s,
return jsonrpc_create_reply(json_object_create(), request_id);
error:
-
- json = ovsdb_error_to_json(error);
- ovsdb_error_destroy(error);
- return jsonrpc_create_error(json, request_id);
+ return jsonrpc_create_error(ovsdb_error_to_json_free(error), request_id);
}
static struct jsonrpc_msg *
--
2.10.2
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev