backport error handling add_trace_recursive from babeltrace
authorJulien Desfossez <julien.desfossez@efficios.com>
Thu, 19 Apr 2012 14:56:19 +0000 (10:56 -0400)
committerJulien Desfossez <julien.desfossez@efficios.com>
Thu, 19 Apr 2012 14:56:19 +0000 (10:56 -0400)
Signed-off-by: Julien Desfossez <julien.desfossez@efficios.com>
src/lttngtop.c

index 6bd7d67e7b65b1b08b07870cabbf1a939e777b8b..092ebdf99d17e1bd9af2ff31c57bf6e3414bb741 100644 (file)
@@ -476,7 +476,7 @@ int bt_context_add_traces_recursive(struct bt_context *ctx, const char *path,
        GArray *trace_ids;
        char lpath[PATH_MAX];
        char * const paths[2] = { lpath, NULL };
-       int ret;
+       int ret = -1;
 
        /*
         * Need to copy path, because fts_open can change it.
@@ -532,17 +532,17 @@ int bt_context_add_traces_recursive(struct bt_context *ctx, const char *path,
                                node->fts_accpath, format_str,
                                packet_seek, NULL, NULL);
                        if (trace_id < 0) {
-                               fprintf(stderr, "[error] [Context] opening trace \"%s\" from %s "
+                               fprintf(stderr, "[warning] [Context] opening trace \"%s\" from %s "
                                        "for reading.\n", node->fts_accpath, path);
-                               ret = trace_id;
-                               goto error;
+                               /* Allow to skip erroneous traces. */
+                               continue;
                        }
                        g_array_append_val(trace_ids, trace_id);
                }
        }
 
        g_array_free(trace_ids, TRUE);
-       return 0;
+       return ret;
 
 error:
        return ret;
This page took 0.024145 seconds and 4 git commands to generate.