]> git.donarmstrong.com Git - rsem.git/blobdiff - Gibbs.cpp
Fixed a bug for calling pthread_join
[rsem.git] / Gibbs.cpp
index c1f4fe276b2100ca6e66a151303cb062e0ec0d0e..6bbfeb198c1cd72e81b0da02327dcefd6158c545 100644 (file)
--- a/Gibbs.cpp
+++ b/Gibbs.cpp
@@ -70,7 +70,6 @@ bool quiet;
 Params *paramsArray;
 pthread_t *threads;
 pthread_attr_t attr;
-void *status;
 int rc;
 
 void load_data(char* reference_name, char* statName, char* imdName) {
@@ -404,15 +403,17 @@ void writeEstimatedParameters(char* modelF, char* imdName) {
 
 int main(int argc, char* argv[]) {
        if (argc < 7) {
-               printf("Usage: rsem-run-gibbs-multi reference_name sample_name sampleToken BURNIN NSAMPLES GAP [-p #Threads] [--var] [-q]\n");
+               printf("Usage: rsem-run-gibbs reference_name imdName statName BURNIN NSAMPLES GAP [-p #Threads] [--var] [-q]\n");
                exit(-1);
        }
 
+       strcpy(imdName, argv[2]);
+       strcpy(statName, argv[3]);
+
        BURNIN = atoi(argv[4]);
        NSAMPLES = atoi(argv[5]);
        GAP = atoi(argv[6]);
-       sprintf(imdName, "%s.temp/%s", argv[2], argv[3]);
-       sprintf(statName, "%s.stat/%s", argv[2], argv[3]);
+
        load_data(argv[1], statName, imdName);
 
        nThreads = 1;
@@ -441,7 +442,7 @@ int main(int argc, char* argv[]) {
                pthread_assert(rc, "pthread_create", "Cannot create thread " + itos(i) + " (numbered from 0)!");
        }
        for (int i = 0; i < nThreads; i++) {
-               rc = pthread_join(threads[i], &status);
+               rc = pthread_join(threads[i], NULL);
                pthread_assert(rc, "pthread_join", "Cannot join thread " + itos(i) + " (numbered from 0)!");
        }
        release();