--- webform2sugar.module.orig	2013-04-05 01:05:06.349080030 -0400
+++ webform2sugar.module	2013-04-05 21:02:30.921080029 -0400
@@ -90,32 +90,32 @@
       // to a single sugar field
       foreach ($sugar_components as $sugar_component) {
 				
-				//Webform version 7.3 wraps the form values in an element 'value'. 7.4 should be accessed directly.
-				if (array_key_exists('value', $submission->data[$sugar_component->cid])) {
-					$formvalues = $submission->data[$sugar_component->cid]['value'];
-				} else {
-					$formvalues = $submission->data[$sugar_component->cid];
-				}
+	//Webform version 7.3 wraps the form values in an element 'value'. 7.4 should be accessed directly.
+	if (array_key_exists('value', $submission->data[$sugar_component->cid])) {
+          $formvalues = $submission->data[$sugar_component->cid]['value'];
+	} else {
+          $formvalues = $submission->data[$sugar_component->cid];
+	}
         
-        //Usually there will just be one value, per field, but this could also be
-        //a multi-value field so we need to loop through in case there is more than one
-        foreach ($formvalues as $formvalue) {
-          //Seperate out each multiple value with a space and append to our value after checking
-          //to make sure there is no 'safe-key' mapping.
-          $value .= ' ' . webform2sugar_check_safe_key($sugar_component, $formvalue, $node);
+        if (count($formvalues) == 1){
+        // Handle single value fields
+          $value .= $formvalues[0];
+          //Only include key if it has a valid value.
+          //Blank values (Such as opt-out checkboxes that were NOT checked) should not be sent.
+          if (trim($value)) {
+            //Now trim it up , and urlencode it.
+            $data .= '&' . $key . '=' . urlencode(ltrim($value));
+          } else if ($key == 'email_opt_in' && !$formvalue) {
+          //If the value was blank, AND it was email_opt_in, AND the safe_key was blank, we need a special case to actually send the opt_out flag!
+            $data .= '&email_opt_out=1';
+          }
+        } else {
+        // url encode multiple select options
+          foreach ($formvalues as $formvalue) {
+            $data .= '&' . $key . '[]=' . urlencode(trim($formvalue));
+          }
         }
       }
-      
-      
-      //Only include key if it has a valid value.
-      //Blank values (Such as opt-out checkboxes that were NOT checked) should not be sent.
-      if (trim($value)) {
-        //Now trim it up , and urlencode it.
-        $data .= '&' . $key . '=' . urlencode(ltrim($value));
-      } else if ($key == 'email_opt_in' && !$formvalue) {
-        //If the value was blank, AND it was email_opt_in, AND the safe_key was blank, we need a special case to actually send the opt_out flag!
-        $data .= '&email_opt_out=1';
-      }
     }
     
     //Check to see if the default campaign_id was overriden in the form.  If not, use the default one.
