mirror of
https://github.com/haiwen/seafile-server.git
synced 2025-09-10 11:48:53 +00:00
Fix empty commit when rename a dir (#572)
Co-authored-by: 杨赫然 <heran.yang@seafile.com>
This commit is contained in:
@@ -816,10 +816,10 @@ diff_results_to_description (GList *results)
|
|||||||
GList *p;
|
GList *p;
|
||||||
DiffEntry *de;
|
DiffEntry *de;
|
||||||
char *add_mod_file = NULL, *removed_file = NULL;
|
char *add_mod_file = NULL, *removed_file = NULL;
|
||||||
char *renamed_file = NULL;
|
char *renamed_file = NULL, *renamed_dir = NULL;
|
||||||
char *new_dir = NULL, *removed_dir = NULL;
|
char *new_dir = NULL, *removed_dir = NULL;
|
||||||
int n_add_mod = 0, n_removed = 0, n_renamed = 0;
|
int n_add_mod = 0, n_removed = 0, n_renamed = 0;
|
||||||
int n_new_dir = 0, n_removed_dir = 0;
|
int n_new_dir = 0, n_removed_dir = 0, n_renamed_dir = 0;
|
||||||
GString *desc;
|
GString *desc;
|
||||||
|
|
||||||
if (results == NULL)
|
if (results == NULL)
|
||||||
@@ -858,6 +858,11 @@ diff_results_to_description (GList *results)
|
|||||||
removed_dir = get_basename(de->name);
|
removed_dir = get_basename(de->name);
|
||||||
n_removed_dir++;
|
n_removed_dir++;
|
||||||
break;
|
break;
|
||||||
|
case DIFF_STATUS_DIR_RENAMED:
|
||||||
|
if (n_renamed_dir == 0)
|
||||||
|
renamed_dir = get_basename(de->name);
|
||||||
|
n_renamed_dir++;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -893,5 +898,11 @@ diff_results_to_description (GList *results)
|
|||||||
g_string_append_printf (desc, "Removed \"%s\" and %d more directories.\n",
|
g_string_append_printf (desc, "Removed \"%s\" and %d more directories.\n",
|
||||||
removed_dir, n_removed_dir - 1);
|
removed_dir, n_removed_dir - 1);
|
||||||
|
|
||||||
|
if (n_renamed_dir == 1)
|
||||||
|
g_string_append_printf (desc, "Renamed directory \"%s\".\n", renamed_dir);
|
||||||
|
else if (n_renamed_dir > 1)
|
||||||
|
g_string_append_printf (desc, "Renamed \"%s\" and %d more directories.\n",
|
||||||
|
renamed_dir, n_renamed_dir - 1);
|
||||||
|
|
||||||
return g_string_free (desc, FALSE);
|
return g_string_free (desc, FALSE);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user