Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
merge msg_vm.c - adrien (please note that there is one line (destruction of the tx_pr...
[simgrid.git] / src / msg / msg_io.c
index 0a3ce20..a35e598 100644 (file)
@@ -213,6 +213,8 @@ int MSG_file_close(msg_file_t fd)
 {
   char *name;
   msg_file_priv_t priv = MSG_file_priv(fd);
+  if (priv->data)
+    xbt_free(priv->data);
 
   int res = simcall_file_close(priv->simdata->smx_file, MSG_host_self());
   name = bprintf("%s:%i:%s",MSG_host_get_name(MSG_host_self()),MSG_process_self_PID(),priv->fullpath);
@@ -490,6 +492,19 @@ void MSG_storage_set_property_value(msg_storage_t storage, const char *name, cha
   xbt_dict_set(MSG_storage_get_properties(storage), name, value,free_ctn);
 }
 
+/** \ingroup m_storage_management
+ * \brief Returns the value of a given storage property
+ *
+ * \param storage a storage
+ * \param name a property name
+ * \return value of a property (or NULL if property not set)
+ */
+const char *MSG_storage_get_property_value(msg_storage_t storage, const char *name)
+{
+  return xbt_dict_get_or_null(MSG_storage_get_properties(storage), name);
+}
+
+
 /** \ingroup msg_storage_management
  * \brief Finds a msg_storage_t using its name.
  * \param name the name of a storage