Home  |  Linux  | Mysql  | PHP  | XML
From:David Soria Parra Date:Mon Aug 25 14:32:45 2008
Subject:cvs: pecl /ktaglib ktaglib_mpeg.cpp
dsp		Mon Aug 25 20:32:45 2008 UTC

  Modified files:              
    /pecl/ktaglib	ktaglib_mpeg.cpp 
  Log:
  Add create parameter to getID3v2() and getID3v1()
  
  Taglib ID3v2() and ID3v1() methods support a create parameter.
  If the parameter is true, an ID3 tag is created if it doesn't exists.
  We now also support this parameter in the bindings, so that you
  can create a tag.
  
  
http://cvs.php.net/viewvc.cgi/pecl/ktaglib/ktaglib_mpeg.cpp?r1=1.2&r2=1.3&diff_format=u
Index: pecl/ktaglib/ktaglib_mpeg.cpp
diff -u pecl/ktaglib/ktaglib_mpeg.cpp:1.2 pecl/ktaglib/ktaglib_mpeg.cpp:1.3
--- pecl/ktaglib/ktaglib_mpeg.cpp:1.2	Sat Aug  2 10:12:05 2008
+++ pecl/ktaglib/ktaglib_mpeg.cpp	Mon Aug 25 20:32:45 2008
@@ -81,14 +81,22 @@
 
 PHP_METHOD(KTaglib_MPEG_File, getID3v1Tag)
 {
+	bool createTag = false;
+	zend_bool create = 0;
 	ze_ktaglib_file_object *intern = NULL;
 	ze_ktaglib_object *nintern = NULL;
 
 	TagLib::MPEG::File *file;
 
+	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|b", &create) == FAILURE) {
+		return;
+	}
+
+	createTag = (create) ? true : false;
+
 	intern = (ze_ktaglib_file_object*) zend_object_store_get_object(getThis() TSRMLS_CC);
 	file   = (TagLib::MPEG::File*) intern->file;
-	if (file->ID3v1Tag()) {
+	if (file->ID3v1Tag(createTag)) {
 		/* initialize the zend object and 
 		   set the internal ->tag pointer to the tag object
 		   returned by TagLib::MPEG::File::ID3v1Tag()
@@ -106,14 +114,22 @@
 
 PHP_METHOD(KTaglib_MPEG_File, getID3v2Tag)
 {
+	bool createTag = false;
+	zend_bool create = 0;
 	ze_ktaglib_file_object *intern = NULL;
 	ze_ktaglib_object *nintern = NULL;
 
 	TagLib::MPEG::File *file;
 
+	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|b", &create) == FAILURE) {
+		return;
+	}
+
+	createTag = (create) ? true : false;
+
 	intern = (ze_ktaglib_file_object*) zend_object_store_get_object(getThis() TSRMLS_CC);
 	file   = (TagLib::MPEG::File*) intern->file;
-	if (file->ID3v2Tag()) {
+	if (file->ID3v2Tag(createTag)) {
 		object_init_ex(return_value, ktaglib_ce_ID3v2_Tag);
 		nintern = (ze_ktaglib_object*) zend_object_store_get_object(return_value TSRMLS_CC);
 		nintern->tag = file->ID3v2Tag();


Navigate in group php.pecl.cvs at sever news.php.net
Previous Next




  
© No Copyright
You are free to use Anything
Site Maintained by PHP Developer
Powered By PHP Consultants