*src/prefs_filtering.c
fix renaming rules on folder rename when folder is not a leaf folder
This commit is contained in:
parent
ce7adb4d91
commit
fd7ed873cd
3 changed files with 20 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
2002-08-21 [colin] 0.8.1claws92
|
||||
|
||||
*src/prefs_filtering.c
|
||||
fix renaming rules on folder rename
|
||||
when folder is not a leaf folder
|
||||
|
||||
2002-08-21 [paul] 0.8.1claws91
|
||||
|
||||
* src/prefs_folder_item.c
|
||||
|
|
|
@ -8,7 +8,7 @@ MINOR_VERSION=8
|
|||
MICRO_VERSION=1
|
||||
INTERFACE_AGE=0
|
||||
BINARY_AGE=0
|
||||
EXTRA_VERSION=claws91
|
||||
EXTRA_VERSION=claws92
|
||||
VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
|
||||
|
||||
dnl set $target
|
||||
|
|
|
@ -615,6 +615,7 @@ void prefs_filtering_rename_path(const gchar *old_path, const gchar *new_path)
|
|||
gchar *prefix;
|
||||
gchar *suffix;
|
||||
gchar *dest_path;
|
||||
gchar *old_path_with_sep;
|
||||
gint destlen;
|
||||
gint prefixlen;
|
||||
gint oldpathlen;
|
||||
|
@ -623,6 +624,7 @@ void prefs_filtering_rename_path(const gchar *old_path, const gchar *new_path)
|
|||
g_return_if_fail(new_path != NULL);
|
||||
|
||||
oldpathlen = strlen(old_path);
|
||||
old_path_with_sep = g_strconcat(old_path,G_DIR_SEPARATOR_S,NULL);
|
||||
|
||||
for (cur = global_processing; cur != NULL; cur = cur->next) {
|
||||
FilteringProp *filtering = (FilteringProp *)cur->data;
|
||||
|
@ -656,6 +658,17 @@ void prefs_filtering_rename_path(const gchar *old_path, const gchar *new_path)
|
|||
g_free(prefix);
|
||||
g_free(action->destination);
|
||||
action->destination = dest_path;
|
||||
} else { /* for non-leaf folders */
|
||||
/* compare with trailing slash */
|
||||
if(!strncmp(old_path_with_sep, action->destination, oldpathlen+1)) {
|
||||
|
||||
suffix = action->destination + oldpathlen + 1;
|
||||
dest_path = g_strconcat(new_path,
|
||||
G_DIR_SEPARATOR_S,
|
||||
suffix, NULL);
|
||||
g_free(action->destination);
|
||||
action->destination = dest_path;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue