#40987 [Opn->Bgs]: SVN PECL extension does not properly prototype all its functions
| From: | tony2001@php.net | Date: | Tue, 03 Apr 2007 22:18:19 +0000 |
| Subject: | #40987 [Opn->Bgs]: SVN PECL extension does not properly prototype all its functions | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-111074@lists.php.net to get a copy of this message | ||
ID: 40987
Updated by: tony2001@php.net
Reported By: edwardzyang at thewritingpot dot com
-Status: Open
+Status: Bogus
Bug Type: Unknown/Other Function
PHP Version: 6CVS-2007-04-03 (CVS)
New Comment:
It would be better to upload this patch somewhere and put the link in
the report.
Also PECL bugs should be reported in PECL bug tracker:
http://pecl.php.net/bugs/search.php?cmd=display&status=Open&package_name[]=svn
Previous Comments:
------------------------------------------------------------------------
[2007-04-03 22:14:59] edwardzyang at thewritingpot dot com
Description:
------------
The svn extension does not properly prototype all of its PHP_FUNCTION
declarations. Thus, when xml_proto.php is run on it, it misses some of
the functions. Below is a patch that adds prototype declarations to:
svn_auth_get_parameter
svn_auth_set_parameter
svn_cat
svn_client_version
svn_import
svn_log
Index: svn.c
===================================================================
RCS file: /repository/pecl/svn/svn.c,v
retrieving revision 1.23
diff -u -r1.23 svn.c
--- svn.c 18 Apr 2006 03:11:52 -0000 1.23
+++ svn.c 3 Apr 2007 22:07:41 -0000
@@ -312,6 +312,8 @@
SVN_G(ctx)->auth_baton = ab;
}
+/* {{{ proto string svn_auth_get_parameter(string key)
+ Retrieves authentication parameter at key */
PHP_FUNCTION(svn_auth_get_parameter)
{
char *key;
@@ -329,7 +331,10 @@
RETURN_STRING((char*)value, 1);
}
}
+/* }}} */
+/* {{{ proto void svn_auth_set_parameter(string key, string value)
+ Sets authentication parameter at key to value */
PHP_FUNCTION(svn_auth_set_parameter)
{
char *key, *value;
@@ -342,7 +347,10 @@
svn_auth_set_parameter(SVN_G(ctx)->auth_baton,
apr_pstrdup(SVN_G(pool), key), apr_pstrdup(SVN_G(pool), value));
}
+/* }}} */
+/* {{{ proto bool svn_import(string path, string url, bool
nonrecursive)
+ Imports unversioned path into repository at url */
PHP_FUNCTION(svn_import)
{
svn_client_commit_info_t *commit_info_p = NULL;
@@ -379,6 +387,7 @@
svn_pool_destroy(subpool);
}
+/* }}} */
/* {{{ PHP_MINIT_FUNCTION */
PHP_MINIT_FUNCTION(svn)
@@ -530,6 +539,8 @@
/* }}} */
+/* {{{ proto string svn_cat(string repos_url[, int revision_no])
+ Returns the contents of repos_url, optionally at revision_no */
PHP_FUNCTION(svn_cat)
{
char *repos_url = NULL;
@@ -597,8 +608,11 @@
svn_pool_destroy(subpool);
if (retdata) efree(retdata);
}
+/* }}} */
+/* {{{ proto array svn_ls(string repos_url[, int revision_no])
+ Returns list of directory contents in repos_url, optionally at
revision_no */
PHP_FUNCTION(svn_ls)
{
char *repos_url = NULL;
@@ -702,6 +716,7 @@
svn_pool_destroy(subpool);
}
+/* }}} */
static svn_error_t *
php_svn_log_message_receiver ( void *baton,
@@ -779,7 +794,9 @@
add_next_index_zval(return_value, row);
return SVN_NO_ERROR;
}
-
+
+/* {{{ proto array svn_log(string repos_url[, int revision_no])
+ Returns the commit log messages of repos_url, optionally at
revision_no */
PHP_FUNCTION(svn_log)
{
const char *repos_url = NULL, *utf8_repos_url = NULL;
@@ -844,6 +861,7 @@
svn_pool_destroy(subpool);
}
+/* }}} */
static size_t php_apr_file_write(php_stream *stream, const char *buf,
size_t count TSRMLS_DC)
{
@@ -1881,6 +1899,8 @@
snprintf(buf, buflen, "%d.%d.%d", vers->major, vers->minor,
vers->patch);
}
+/* {{{ proto string svn_client_version()
+ Returns the version of the SVN client libraries */
PHP_FUNCTION(svn_client_version)
{
char vers[128];
@@ -1892,6 +1912,7 @@
php_svn_get_version(vers, sizeof(vers));
RETURN_STRING(vers, 1);
}
+/* }}} */
/* {{{ proto resource svn_repos_fs_begin_txn_for_commit(resource
repos, long rev, string author, string log_msg)
create a new transaction */
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=40987&edit=1