]> Git Repo - qemu.git/blobdiff - qapi/qapi-clone-visitor.c
Merge remote-tracking branch 'dgilbert/tags/pull-hmp-20170517' into staging
[qemu.git] / qapi / qapi-clone-visitor.c
index 0bb82163724fe89cda14b2f5d950ebd7719d8050..de756bfb334f71ce00b440c2911872063d84ec71 100644 (file)
@@ -110,7 +110,7 @@ static void qapi_clone_type_str(Visitor *v, const char *name, char **obj,
     assert(qcv->depth);
     /*
      * Pointer was already cloned by g_memdup; create fresh copy.
-     * Note that as long as qmp-output-visitor accepts NULL instead of
+     * Note that as long as qobject-output-visitor accepts NULL instead of
      * "", then we must do likewise. However, we want to obey the
      * input visitor semantics of never producing NULL when the empty
      * string is intended.
@@ -180,3 +180,16 @@ void *qapi_clone(const void *src, void (*visit_type)(Visitor *, const char *,
     visit_free(v);
     return dst;
 }
+
+void qapi_clone_members(void *dst, const void *src, size_t sz,
+                        void (*visit_type_members)(Visitor *, void *,
+                                                   Error **))
+{
+    Visitor *v;
+
+    v = qapi_clone_visitor_new();
+    memcpy(dst, src, sz);
+    to_qcv(v)->depth++;
+    visit_type_members(v, dst, &error_abort);
+    visit_free(v);
+}
This page took 0.024026 seconds and 4 git commands to generate.