diff --git a/app/actions/channels-commands.c b/app/actions/channels-commands.c
index ecf2d3b43f..e718e890bc 100644
--- a/app/actions/channels-commands.c
+++ b/app/actions/channels-commands.c
@@ -383,7 +383,6 @@ channels_duplicate_cmd_callback (GimpAction *action,
GimpImage *image = NULL;
GList *channels;
GimpChannel *parent = GIMP_IMAGE_ACTIVE_PARENT;
- return_if_no_channels (image, channels, data);
if (GIMP_IS_COMPONENT_EDITOR (data))
{
@@ -392,6 +391,8 @@ channels_duplicate_cmd_callback (GimpAction *action,
const gchar *desc;
gchar *name;
+ return_if_no_image (image, data);
+
component = GIMP_COMPONENT_EDITOR (data)->clicked_component;
gimp_enum_get_value (GIMP_TYPE_CHANNEL_TYPE, component,
@@ -415,6 +416,8 @@ channels_duplicate_cmd_callback (GimpAction *action,
GList *new_channels = NULL;
GList *iter;
+ return_if_no_channels (image, channels, data);
+
channels = g_list_copy (channels);
gimp_image_undo_group_start (image,
GIMP_UNDO_GROUP_CHANNEL_ADD,
diff --git a/menus/channels-menu.ui b/menus/channels-menu.ui
index 87d273e5cb..572ae04131 100644
--- a/menus/channels-menu.ui
+++ b/menus/channels-menu.ui
@@ -23,14 +23,14 @@
- app.channels-new
- app.channels-raise
- app.channels-lower
- - app.channels-duplicate
+ - channels.channels-duplicate
- app.channels-delete
- - app.channels-selection-replace
- - app.channels-selection-add
- - app.channels-selection-subtract
- - app.channels-selection-intersect
+ - channels.channels-selection-replace
+ - channels.channels-selection-add
+ - channels.channels-selection-subtract
+ - channels.channels-selection-intersect