]> AND Private Git Repository - loba.git/commitdiff
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
API change in SG 3.7.0: MSG_get_host_table() -> MSG_hosts_as_dynar().
authorArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Thu, 8 Mar 2012 08:25:34 +0000 (09:25 +0100)
committerArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Thu, 8 Mar 2012 08:25:34 +0000 (09:25 +0100)
BUGS
hostdata.cpp

diff --git a/BUGS b/BUGS
index de42340c8cd028ef825725f46a373fd71fdc10f3..09fb04ff48d8bdbdde89af9e73efa634ece06cf5 100644 (file)
--- a/BUGS
+++ b/BUGS
@@ -1,27 +1,3 @@
-========================================================================
--- Wed, Feb 29 16:31:56 2012 +0100
-
-Les fonctions MSG_get_host{number,table} n'existent plus dans les
-dernières versions de SimGrid.  Utiliser MSG_hosts_as_dynar à la place.
-
--- Tue, 06 Mar 2012 17:02:02 +0100
-
-Le patch suivant corrige le problème :
---- a/hostdata.cpp
-+++ b/hostdata.cpp
-@@ -19,8 +19,9 @@ void hostdata::create()
-     using std::placeholders::_1;
-     using std::placeholders::_2;
--    int nhosts = MSG_get_host_number();
--    m_host_t* host_list = MSG_get_host_table();
-+    xbt_dynar_t host_dynar = MSG_hosts_as_dynar();
-+    int nhosts = xbt_dynar_length(host_dynar);
-+    m_host_t* host_list = static_cast<m_host_t*>(xbt_dynar_to_array(host_dynar));
-     // only sort hosts for automatically created deployment
-     if (opt::auto_depl::enabled)
-         std::sort(host_list, host_list + nhosts,
-
 ========================================================================
 -- Wed, Feb 29 16:16:45 2012 +0100
 
index ee8fadce107447fa32c0a3e7da307130ac89758f..5498ba8ad64127573f17748446880bbef4719e9e 100644 (file)
@@ -19,8 +19,14 @@ void hostdata::create()
     using std::placeholders::_1;
     using std::placeholders::_2;
 
+#if SIMGRID_VERSION < MAKE_SIMGRID_VERSION(3, 7, 0)
     int nhosts = MSG_get_host_number();
     m_host_t* host_list = MSG_get_host_table();
+#else // API changed with SG 3.7.0
+    xbt_dynar_t host_dynar = MSG_hosts_as_dynar();
+    int nhosts = xbt_dynar_length(host_dynar);
+    m_host_t* host_list = static_cast<m_host_t*>(xbt_dynar_to_array(host_dynar));
+#endif
     // only sort hosts for automatically created deployment
     if (opt::auto_depl::enabled)
         std::sort(host_list, host_list + nhosts,