Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
XBT: Add xbt_str_from_file(FILE*)
[simgrid.git] / src / xbt / xbt_str.c
index 73279a4..d18a945 100644 (file)
@@ -699,3 +699,23 @@ char *xbt_str_diff(char *a, char *b)
 
   return res;
 }
 
   return res;
 }
+
+
+/** @brief creates a new string containing what can be read on a fd
+ *
+ */
+char* xbt_str_from_file(FILE *file) {
+  xbt_strbuff_t buff = xbt_strbuff_new();
+  char *res;
+  char bread[1024];
+
+  while (!feof(file)) {
+    fread(bread, 1, 1023, file);
+    bread[1023] = '\0';
+    xbt_strbuff_append(buff,bread);
+  }
+
+  res = buff->data;
+  xbt_strbuff_free_container(buff);
+  return res;
+}