Commerce product entity not being saved by EMW from another entity form submit
It's seems that by using the product entity directly from $form_state['complete form']['#product']; the entity_metadata_wrapper() works as expected and it saves the values.

if (!empty($form_state['values']['plugins']['plugin_settings'])){
    $selected_sources = array_values(array_filter($form_state['values']['plugins']['plugin_settings']));
}
    //get directly the product, without entity_load_single() 
    $product_entity = $form_state['complete form']['#product']; 
    $wrapper_product = entity_metadata_wrapper('commerce_product', $product_entity);
    if (!empty($selected_sources)) {
        $wrapper_product-&gt;field_product_location_store = $selected_sources;
        $wrapper_product-&gt;save();
    }


Although the object loaded by entity_load_single() is identical with the object obtained by $product_entity = $form_state['complete form']['#product']; the entity_metadata_wrapper() works only for the second case, which seems more logical and is faster.