Index: /CKEditor/branches/features/pasting/_source/plugins/pastefromword/plugin.js
===================================================================
--- /CKEditor/branches/features/pasting/_source/plugins/pastefromword/plugin.js	(revision 4593)
+++ /CKEditor/branches/features/pasting/_source/plugins/pastefromword/plugin.js	(revision 4594)
@@ -669,5 +669,5 @@
 										if( typeof style == 'object' )
 											style = style[ className ];
-										// Maintain style rules priorities.   
+										// Maintain style rules priorities.
 										style && element.addStyle( style, true );
 									}
@@ -685,15 +685,4 @@
 							children = element.children;
 
-						// Drop the single wrapper paragraph within table cell
-						// with all attributes preserved to cell.
-						if( /td|th/.test( parent.name )
-							&& parent.onlyChild() )
-						{
-							CKEDITOR.tools.extend( parent.attributes, attrs );
-							attrs && parent.addStyle( attrs.style  );
-							delete element.name;
-							return;
-						}
-
 						// Is the paragraph actually a list item?
 						if( resolveListItem( element ) )
@@ -732,4 +721,5 @@
 
 						var attrs = element.attributes,
+							styleText = attrs.style,
 							parent = element.parent;
 						
@@ -738,5 +728,5 @@
 							CKEDITOR.tools.extend( parent.attributes,
 									element.attributes );
-							attrs && parent.addStyle( attrs.style );
+							styleText && parent.addStyle( styleText );
 							delete element.name;
 							return;
@@ -745,9 +735,9 @@
 						else
 						{
-							var styleText = attrs.style || '';
+							styleText = styleText || '';
 							// IE's having those deprecated attributes, normalize them.
 							if ( attrs.color )
 							{
-								styleText += 'color:' + attrs.color + ';';
+								attrs.color != '#000000' && ( styleText += 'color:' + attrs.color + ';' );
 								delete attrs.color;
 							}
@@ -869,5 +859,6 @@
 						// Remove default border style.
 						[ /^border$/, /^(:?medium\s*)?none\s*$/ ],
-						[ /^margin$/, /0(?:cm|in) 0(?:cm|in) 0pt/ ],
+						// Remove empty margin values, e.g. 0.00001pt 0em 0pt
+						[ /^margin$/, /^(?:\b0[^\s]*\s*){1,4}$/ ],
 						[ 'text-indent', '0cm' ],
 						[ 'page-break-before' ],
