diff --git a/lib/Slic3r/GCode.pm b/lib/Slic3r/GCode.pm
index 7653e4c32..b75def91f 100644
--- a/lib/Slic3r/GCode.pm
+++ b/lib/Slic3r/GCode.pm
@@ -374,7 +374,7 @@ sub set_extruder {
     my ($extruder) = @_;
     
     # return nothing if this extruder was already selected
-    return "" if (defined $self->extruder) && ($self->extruder->id == $extruder);
+    return "" if (defined $self->extruder) && ($self->extruder->id == $extruder->id);
     
     # if we are running a single-extruder setup, just set the extruder and return nothing
     if (!$self->multiple_extruders) {