Index: wp-admin/admin-ajax.php
===================================================================
--- wp-admin/admin-ajax.php	(revision 10933)
+++ wp-admin/admin-ajax.php	(working copy)
@@ -784,7 +784,8 @@
 					) );
 					$x->send();
 				}
-				$mid = add_meta( $pid );
+				if ( !$mid = add_meta( $pid ) ) 
+					die(__('Please check you have selected a name and value.'));
 			} else {
 				die('0');
 			}
@@ -811,7 +812,8 @@
 		if ( !current_user_can( 'edit_post', $meta->post_id ) )
 			die('-1');
 		if ( !$u = update_meta( $mid, $key, $value ) )
-			die('1'); // We know meta exists; we also know it's unchanged (or DB error, in which case there are bigger problems).
+			die('0'); // We know meta exists; we also know it's unchanged (or DB error, in which case there are bigger problems).
+	
 		$key = stripslashes($key);
 		$value = stripslashes($value);
 		$x = new WP_Ajax_Response( array(
Index: wp-admin/includes/post.php
===================================================================
--- wp-admin/includes/post.php	(revision 10933)
+++ wp-admin/includes/post.php	(working copy)
@@ -682,6 +682,10 @@
 
 	$meta_value = maybe_serialize( stripslashes( $meta_value ));
 	$meta_id = (int) $meta_id;
+	
+	if ('' == trim( $meta_value ) || empty ( $meta_value ) ) {
+		return false;
+	}
 
 	$data  = compact( 'meta_key', 'meta_value' );
 	$where = compact( 'meta_id' );
