X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ceaf8b82812aa8d58495687482fc6d4995119934..403af5e6247ce6452b721f418a5b41e4548efac4:/src/mc/mc_record.cpp diff --git a/src/mc/mc_record.cpp b/src/mc/mc_record.cpp index ce2bfa2cba..b0011bd101 100644 --- a/src/mc/mc_record.cpp +++ b/src/mc/mc_record.cpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2014-2015. The SimGrid Team. +/* Copyright (c) 2014-2017. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -18,27 +18,27 @@ #include "simgrid/simix.h" #include "src/kernel/context/Context.hpp" -#include "src/simix/ActorImpl.hpp" -#include "src/simix/smx_private.h" +#include "src/mc/mc_record.hpp" #include "src/mc/mc_replay.h" -#include "src/mc/mc_record.h" +#include "src/simix/ActorImpl.hpp" +#include "src/simix/smx_private.hpp" #include "src/mc/mc_base.h" #include "src/mc/Transition.hpp" #if SIMGRID_HAVE_MC -#include "src/mc/mc_request.h" -#include "src/mc/mc_private.h" -#include "src/mc/mc_state.h" -#include "src/mc/mc_smx.h" #include "src/mc/checker/Checker.hpp" +#include "src/mc/mc_private.hpp" +#include "src/mc/mc_request.hpp" +#include "src/mc/mc_smx.hpp" +#include "src/mc/mc_state.hpp" #endif XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_record, mc, " Logging specific to MC record/replay facility"); extern "C" { -char* MC_record_path = nullptr; +std::string MC_record_path; } namespace simgrid { @@ -67,10 +67,10 @@ void replay(RecordTrace const& trace) } } -void replay(const char* path_string) +void replay(std::string path_string) { simgrid::mc::processes_time.resize(SIMIX_process_get_maxpid()); - simgrid::mc::RecordTrace trace = simgrid::mc::parseRecordTrace(path_string); + simgrid::mc::RecordTrace trace = simgrid::mc::parseRecordTrace(path_string.c_str()); simgrid::mc::replay(trace); simgrid::mc::processes_time.clear(); } @@ -86,7 +86,7 @@ RecordTrace parseRecordTrace(const char* data) while (*current) { simgrid::mc::Transition item; - int count = sscanf(current, "%u/%u", &item.pid, &item.argument); + int count = sscanf(current, "%d/%d", &item.pid, &item.argument); if(count != 2 && count != 1) throw std::runtime_error("Could not parse record path"); res.push_back(item);