changeset 82:39f1abc89152

merge with blacktrash
author Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
date Fri, 27 May 2011 17:31:02 +0200
parents ebb9fb5e1705 (current diff) b76969f5b9b2 (diff)
children 4af0c20daad6
files crecord/crecord_core.py
diffstat 1 files changed, 18 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/crecord/crecord_core.py
+++ b/crecord/crecord_core.py
@@ -126,16 +126,28 @@
                         patch.internalpatch(ui, repo, fp, strip=1, files=pfiles,
                                             eolmode=None)
                         scmutil.updatedir(ui, repo, pfiles)
-                    except ImportError:
+                    except ImportError: # pre 3438417a6657
                         try:
-                            patch.internalpatch(fp, ui, 1, repo.root, files=pfiles,
-                                                eolmode=None)
-                        except TypeError:  # backwards compatilibity with hg 1.1
-                            patch.internalpatch(fp, ui, 1, repo.root, files=pfiles)
+                            patch.internalpatch(ui, repo, fp, 1, eolmode=None)
+                        except (TypeError, AttributeError): # pre 17cea10c343e
+                            try:
+                                patch.internalpatch(ui, repo, fp, 1, repo.root,
+                                                    eolmode=None)
+                            except (TypeError, AttributeError): # pre 00a881581400
+                                try:
+                                    patch.internalpatch(fp, ui, 1, repo.root,
+                                                        files=pfiles, eolmode=None)
+                                except TypeError: # backwards compatible with hg 1.1
+                                    patch.internalpatch(fp, ui, 1,
+                                                        repo.root, files=pfiles)
                         try:
                             cmdutil.updatedir(ui, repo, pfiles)
                         except AttributeError:
-                            patch.updatedir(ui, repo, pfiles)
+                            try:
+                                patch.updatedir(ui, repo, pfiles)
+                            except AttributeError:
+                                # from 00a881581400 onwards
+                                pass
                 except patch.PatchError, err:
                     s = str(err)
                     if s: