You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Jon Middleton <jj...@ixtab.org.uk> on 2002/12/04 20:13:48 UTC

[PATCH] Set svn_boolean_t * as a OUTPARAM in svn_wc.i

Hi,

This is my first swig patch. I *think* it's ok as example script that
I wrote works, but I've only been looking at swig for a couple of
nights.
 
It sets svn_boolean_t * as a OUTPARAM for svn_wc.h so that
svn_wc_text_modified_p and svn_wc_props_modified_p can be called from
python.

* subversion/bindings/swig/svn_wc.i: Set svn_boolean_t * as a OUTPARAM

* tools/examples/check-modified.py: Added - a python script that
  checks for modified files.

Index: tools/examples/check-modified.py
===================================================================
--- tools/examples/check-modified.py	(working copy)
+++ tools/examples/check-modified.py	(working copy)
@@ -0,0 +1,48 @@
+#!/usr/bin/python
+#
+# USAGE: check-modified.py FILE_OR_DIR1 FILE_OR_DIR2 ...
+#
+# prints out the URL associated with each item
+#
+
+import sys
+import os
+import os.path
+import svn.util
+import svn.client
+import svn.wc
+
+def usage():
+  print "Usage: " + sys.argv[0] + " FILE_OR_DIR1 FILE_OR_DIR2\n"
+  sys.exit(0)
+
+def run(files):
+
+  svn.util.apr_initialize()
+  pool = svn.util.svn_pool_create(None)
+
+  for f in files:
+    dirpath = fullpath = os.path.abspath(f)
+    if not os.path.isdir(dirpath):
+      dirpath = os.path.dirname(dirpath)
+  
+    adm_baton = svn.wc.svn_wc_adm_open(None, dirpath, False, True, pool)
+
+    try:
+      entry = svn.wc.svn_wc_entry(fullpath, adm_baton, 0, pool)
+
+      if svn.wc.svn_wc_text_modified_p(fullpath, adm_baton, pool):
+        print "M      %s" % f
+      else:
+        print "       %s" % f
+    except:
+      print "?      %s" % f
+
+    svn.wc.svn_wc_adm_close(adm_baton)
+
+  svn.util.svn_pool_destroy(pool)
+  svn.util.apr_terminate()        
+
+if __name__ == '__main__':
+  run(sys.argv[1:])
+    

Property changes on: tools/examples/check-modified.py
___________________________________________________________________
Name: svn:executable
   + 

Index: subversion/bindings/swig/svn_wc.i
===================================================================
--- subversion/bindings/swig/svn_wc.i	(revision 3970)
+++ subversion/bindings/swig/svn_wc.i	(working copy)
@@ -38,7 +38,8 @@
 */
 %apply SWIGTYPE **OUTPARAM {
     svn_wc_entry_t **,
-    svn_wc_adm_access_t **
+    svn_wc_adm_access_t **,
+    svn_boolean_t *
 };
 
 /* ----------------------------------------------------------------------- */


-- 
Jon

"First things first -- but not necessarily in that order"
                -- The Doctor, "Doctor Who"