:100644 100644 241abdd... 0000000... M	uc_cart/uc_cart.js
:100644 100644 c01cb37... 0000000... M	uc_store/uc_country_select.js

diff --git uc_cart/uc_cart.js uc_cart/uc_cart.js
index 241abdd..85397f5 100644
--- uc_cart/uc_cart.js
+++ uc_cart/uc_cart.js
@@ -78,6 +78,10 @@ function uc_cart_copy_address(checked, source, target, skipAnimation) {
       $('#' + target + '-pane div.address-pane-table').slideDown();
     }
     copy_box_checked = false;
+
+    // Unblock refreshing of the zone data when the country changes
+    $('#edit-panes-' + target + '-' + target + '-country').data('block_zone_refresh', false);
+
     return false;
   }
 
@@ -118,6 +122,9 @@ function uc_cart_copy_address(checked, source, target, skipAnimation) {
     }
   );
 
+  // Block refreshing of the zone data when the country is copied
+  $('#edit-panes-' + target + '-' + target + '-country').data('block_zone_refresh', true);
+
   return false;
 }
 
@@ -170,7 +177,7 @@ function apply_address(type, address_str) {
   $('#edit-panes-' + temp + '-postal-code').val(address.postal_code).trigger('change');
 
   if ($('#edit-panes-' + temp + '-country').val() != address.country) {
-    $('#edit-panes-' + temp + '-country').val(address.country).trigger('change');
+    $('#edit-panes-' + temp + '-country').val(address.country).data('block_zone_refresh', true).trigger('change').data('block_zone_refresh', false);
     try {
       uc_update_zone_select('edit-panes-' + temp + '-country', address.zone);
     }
diff --git uc_store/uc_country_select.js uc_store/uc_country_select.js
index c01cb37..8627643 100644
--- uc_store/uc_country_select.js
+++ uc_store/uc_country_select.js
@@ -11,7 +11,9 @@
 Drupal.behaviors.ucCountrySelect = function(context) {
   $('select[id$=-country]:not(.ucCountrySelect-processed)', context).addClass('ucCountrySelect-processed').change(
     function() {
-      uc_update_zone_select(this.id, '');
+      if (!$(this).data('block_zone_refresh')) {
+        uc_update_zone_select(this.id, '');
+      }
     }
   );
 }
