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"
- application/pgp-signature attachment: stored
Received on Wed Dec 4 21:15:17 2002