diff --git a/modules/product_reference/commerce_product_reference.module b/modules/product_reference/commerce_product_reference.module
index ba88044..b6f1a9e 100644
--- a/modules/product_reference/commerce_product_reference.module
+++ b/modules/product_reference/commerce_product_reference.module
@@ -214,12 +214,22 @@ function commerce_product_reference_entity_view($entity, $entity_type, $view_mod
   // formatter.
   foreach (commerce_info_fields('commerce_product_reference', $entity_type) as $field_name => $field) {
     if (isset($instances[$field_name])) {
+
       // Find the default product based on the cardinality of the field.
       if ($field['cardinality'] == 1) {
         $product = $wrapper->{$field_name}->value();
       }
+      // Find the correct default product.
       else {
-        $product = $wrapper->{$field_name}->get(0)->value();
+        $delta = 0;
+        if (isset($_GET['product_id'])) {
+          foreach ($wrapper->{$field_name}->value() as $key => $value) {
+            if ($value->product_id == $_GET['product_id']) {
+              $delta = $key;
+            }
+          }
+        }
+        $product = $wrapper->{$field_name}->get($delta)->value();
       }
 
       // If we found a product and the reference field enables field injection...
