Plugins/VcsPlugins/vcsMercurial/PurgeExtension/purge.py

changeset 1249
77f836a883c1
parent 1087
fb8cd56819a9
child 1318
6fa303bd65d6
diff -r 7d0eff6435a9 -r 77f836a883c1 Plugins/VcsPlugins/vcsMercurial/PurgeExtension/purge.py
--- a/Plugins/VcsPlugins/vcsMercurial/PurgeExtension/purge.py	Tue Aug 30 18:19:32 2011 +0200
+++ b/Plugins/VcsPlugins/vcsMercurial/PurgeExtension/purge.py	Tue Aug 30 18:20:55 2011 +0200
@@ -53,23 +53,29 @@
         """
         purgeEntries = []
         
-        ioEncoding = Preferences.getSystem("IOEncoding")
-        process = QProcess()
         args = []
         args.append("purge")
         args.append("--print")
         if all:
             args.append("--all")
         
-        process.setWorkingDirectory(repodir)
-        process.start('hg', args)
-        procStarted = process.waitForStarted()
-        if procStarted:
-            finished = process.waitForFinished(30000)
-            if finished and process.exitCode() == 0:
-                purgeEntries = str(
-                    process.readAllStandardOutput(),
-                    ioEncoding, 'replace').strip().split()
+        client = self.vcs.getClient()
+        if client:
+            out, err = client.runcommand(args)
+            if out:
+                purgeEntries = out.strip().split()
+        else:
+            ioEncoding = Preferences.getSystem("IOEncoding")
+            process = QProcess()
+            process.setWorkingDirectory(repodir)
+            process.start('hg', args)
+            procStarted = process.waitForStarted()
+            if procStarted:
+                finished = process.waitForFinished(30000)
+                if finished and process.exitCode() == 0:
+                    purgeEntries = str(
+                        process.readAllStandardOutput(),
+                        ioEncoding, 'replace').strip().split()
         
         return purgeEntries
     
@@ -104,7 +110,7 @@
                 args.append("--all")
             args.append("-v")
             
-            dia = HgDialog(title)
+            dia = HgDialog(title, self.vcs)
             res = dia.startProcess(args, repodir)
             if res:
                 dia.exec_()

eric ide

mercurial