src.ctf.lttng-live: lttng_live_metadata_update: use std::vector as metadata buffer
[babeltrace.git] / src / plugins / ctf / lttng-live / viewer-connection.cpp
index a92a2eac5167a52b68376ebfda08509241878ded..35e9efb8ee45757ed36358cc9de8f66017b0be17 100644 (file)
@@ -1092,7 +1092,7 @@ end:
 }
 
 enum lttng_live_get_one_metadata_status
-lttng_live_get_one_metadata_packet(struct lttng_live_trace *trace, FILE *fp, size_t *reply_len)
+lttng_live_get_one_metadata_packet(struct lttng_live_trace *trace, std::vector<char>& buf)
 {
     uint64_t len = 0;
     enum lttng_live_get_one_metadata_status status;
@@ -1101,7 +1101,6 @@ lttng_live_get_one_metadata_packet(struct lttng_live_trace *trace, FILE *fp, siz
     struct lttng_viewer_get_metadata rq;
     struct lttng_viewer_metadata_packet rp;
     gchar *data = NULL;
-    ssize_t writelen;
     struct lttng_live_session *session = trace->session;
     struct lttng_live_msg_iter *lttng_live_msg_iter = session->lttng_live_msg_iter;
     struct lttng_live_metadata *metadata = trace->metadata;
@@ -1202,16 +1201,9 @@ lttng_live_get_one_metadata_packet(struct lttng_live_trace *trace, FILE *fp, siz
     /*
      * Write the metadata to the file handle.
      */
-    writelen = fwrite(data, sizeof(uint8_t), len, fp);
-    if (writelen != len) {
-        BT_CPPLOGE_APPEND_CAUSE_SPEC(viewer_connection->logger,
-                                     "Writing in the metadata file stream");
-        status = LTTNG_LIVE_GET_ONE_METADATA_STATUS_ERROR;
-        goto end;
-    }
+    buf.insert(buf.end(), data, data + len);
 
 empty_metadata_packet_retry:
-    *reply_len = len;
     status = LTTNG_LIVE_GET_ONE_METADATA_STATUS_OK;
 
 end:
This page took 0.023861 seconds and 4 git commands to generate.