r1682 - in xwiki/trunk/core/src/main/java/com/xpn/xwiki: . doc

Jeremi Joslin jeremi at users.forge.objectweb.org
Wed Dec 6 10:24:35 CET 2006


Author: jeremi
Date: 2006-12-06 10:24:34 +0100 (Wed, 06 Dec 2006)
New Revision: 1682

Modified:
   xwiki/trunk/core/src/main/java/com/xpn/xwiki/XWiki.java
   xwiki/trunk/core/src/main/java/com/xpn/xwiki/doc/XWikiDocument.java
Log:
XWIKI-421  	 Copying a wiki failed sometime on Documents with Attachments or Objects

Modified: xwiki/trunk/core/src/main/java/com/xpn/xwiki/XWiki.java
===================================================================
--- xwiki/trunk/core/src/main/java/com/xpn/xwiki/XWiki.java	2006-12-06 08:21:10 UTC (rev 1681)
+++ xwiki/trunk/core/src/main/java/com/xpn/xwiki/XWiki.java	2006-12-06 09:24:34 UTC (rev 1682)
@@ -2717,12 +2717,7 @@
                 }
 
                 if (wikilanguage == null) {
-                    // Make sure attachments are loaded
-                    sdoc.loadAttachments(context);
-                    if (docname.equals(targetdocname))
-                        tdoc = (XWikiDocument) sdoc.clone();
-                    else
-                        tdoc = sdoc.copyDocument(targetdocname, context);
+                    tdoc = sdoc.copyDocument(targetdocname, context);
                     // forget past versions
                     if (reset) {
                         tdoc.setVersion("1.1");
@@ -2767,6 +2762,7 @@
                         if (ttdoc != tdoc)
                             return false;
 
+                        //Do we have attachments in traductions? I don't think so.
                         // Make sure attachments are loaded
                         stdoc.loadAttachments(context);
 

Modified: xwiki/trunk/core/src/main/java/com/xpn/xwiki/doc/XWikiDocument.java
===================================================================
--- xwiki/trunk/core/src/main/java/com/xpn/xwiki/doc/XWikiDocument.java	2006-12-06 08:21:10 UTC (rev 1681)
+++ xwiki/trunk/core/src/main/java/com/xpn/xwiki/doc/XWikiDocument.java	2006-12-06 09:24:34 UTC (rev 1682)
@@ -1458,6 +1458,8 @@
             XWikiAttachment attachment = (XWikiAttachment) attit.next();
             XWikiAttachment newattachment = (XWikiAttachment) attachment.clone();
             newattachment.setDoc(this);
+            newattachment.getAttachment_archive().setAttachment(newattachment);
+            newattachment.getAttachment_content().setContentDirty(true);
             getAttachmentList().add(newattachment);
         }
     }
@@ -2626,11 +2628,12 @@
         loadAttachments(context);
         loadArchive(context);
 
-        if (oldname.equals(docname))
-            return this;
+/*        if (oldname.equals(docname))
+            return this;    */
 
         XWikiDocument newdoc = (XWikiDocument) clone();
         newdoc.setFullName(docname, context);
+        newdoc.setContentDirty(true);
         newdoc.getxWikiClass().setName(docname);
         Vector objects = newdoc.getObjects(oldname);
         if (objects != null) {





More information about the Xwiki-notifications mailing list