commit - 2129468431e50164b67e02e0125a54a8216cec99
commit + f7b389259216725a5f122fbf01a6bbd685b96642
blob - fffacf8141f5666f4ba7e40767b33d337935d700
blob + 660a5a14f8b3ce44a6a8706bfe51b001b14a0419
--- got/got.c
+++ got/got.c
free(cwd);
} else if (argc == 2) {
repo_path = argv[0];
- worktree_path = strdup(argv[1]);
+ worktree_path = realpath(argv[1], NULL);
if (worktree_path == NULL)
return got_error_from_errno();
} else
blob - 80b9f971f82e444c5e97fda10624390229449f99
blob + a7d4b7d71eb224730c97b9f7a5d4e046a56101d9
--- lib/worktree.c
+++ lib/worktree.c
struct got_blob_object *blob = NULL;
struct got_tree_object *tree = NULL;
char *path = NULL;
+ char *progress_path = NULL;
size_t len;
if (parent[0] == '/' && parent[1] == '\0')
if (err)
goto done;
- (*progress_cb)(progress_arg, path);
+ progress_path = path;
+ if (strncmp(progress_path, worktree->path_prefix, len) == 0)
+ progress_path += len;
+ (*progress_cb)(progress_arg, progress_path);
switch (got_object_get_type(obj)) {
case GOT_OBJ_TYPE_BLOB: