Hello community,
here is the log from the commit of package ruby-mysql
checked in at Fri Aug 31 16:01:57 CEST 2007.
--------
--- ruby-mysql/ruby-mysql.changes 2007-03-12 15:47:52.000000000 +0100
+++ /mounts/work_src_done/STABLE/ruby-mysql/ruby-mysql.changes 2007-08-31 00:35:46.269434000 +0200
@@ -1,0 +2,6 @@
+Fri Aug 31 00:11:17 CEST 2007 - mrueckert@suse.de
+
+- update to version 2.7.4:
+ * BUG: Mysql::Stmt#execute memory leak.
+
+-------------------------------------------------------------------
Old:
----
mysql-ruby-2.7.3.tar.gz
New:
----
mysql-ruby-2.7.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ruby-mysql.spec ++++++
--- /var/tmp/diff_new_pack.n17795/_old 2007-08-31 16:00:04.000000000 +0200
+++ /var/tmp/diff_new_pack.n17795/_new 2007-08-31 16:00:04.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package ruby-mysql (Version 2.7.3)
+# spec file for package ruby-mysql (Version 2.7.4)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -11,8 +11,8 @@
# norootforbuild
Name: ruby-mysql
-Version: 2.7.3
-Release: 2
+Version: 2.7.4
+Release: 1
#
License: Other uncritical OpenSource License
Group: Development/Languages/Ruby
@@ -53,6 +53,9 @@
%{_libdir}/ruby/vendor_ruby/%{rb_ver}/%{rb_arch}/mysql.so
%changelog
+* Fri Aug 31 2007 - mrueckert@suse.de
+- update to version 2.7.4:
+ * BUG: Mysql::Stmt#execute memory leak.
* Mon Mar 12 2007 - mrueckert@suse.de
- remove openssl-devel again. the mysql-devel package got fixed.
* Mon Mar 12 2007 - mrueckert@suse.de
++++++ mysql-ruby-2.7.3.tar.gz -> mysql-ruby-2.7.4.tar.gz ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/mysql-ruby-2.7.3/mysql.c.in new/mysql-ruby-2.7.4/mysql.c.in
--- old/mysql-ruby-2.7.3/mysql.c.in 2006-12-20 06:31:52.000000000 +0100
+++ new/mysql-ruby-2.7.4/mysql.c.in 2007-08-22 01:20:37.000000000 +0200
@@ -1,5 +1,5 @@
/* ruby mysql module
- * $Id: mysql.c.in,v 1.38 2006-12-20 05:31:52 tommy Exp $
+ * $Id: mysql.c.in,v 1.40 2007-08-21 23:20:37 tommy Exp $
*/
#include "ruby.h"
@@ -14,7 +14,7 @@
#include
#endif
-#define MYSQL_RUBY_VERSION 20703
+#define MYSQL_RUBY_VERSION 20704
#define GC_STORE_RESULT_LIMIT 20
@@ -129,6 +129,7 @@
for (i = 0; i < s->result.n; i++) {
if (s->result.bind[i].buffer)
xfree(s->result.bind[i].buffer);
+ s->result.bind[i].buffer = NULL;
}
xfree(s->result.bind);
s->result.bind = NULL;
@@ -144,6 +145,19 @@
s->result.n = 0;
}
+static void free_execute_memory(struct mysql_stmt *s)
+{
+ if (s->res && s->result.bind) {
+ int i;
+ for (i = 0; i < s->result.n; i++) {
+ if (s->result.bind[i].buffer)
+ xfree(s->result.bind[i].buffer);
+ s->result.bind[i].buffer = NULL;
+ }
+ }
+ mysql_stmt_free_result(s->stmt);
+}
+
static void free_mysqlstmt(struct mysql_stmt* s)
{
free_mysqlstmt_memory(s);
@@ -700,6 +714,9 @@
int loop = 0;
MYSQL* m = GetHandler(obj);
Check_Type(sql, T_STRING);
+ if (GetMysqlStruct(obj)->connection == Qfalse) {
+ rb_raise(eMysql, "query: not connected");
+ }
if (rb_block_given_p()) {
#if MYSQL_VERSION_ID >= 40101
if (mysql_get_server_version(m) >= 40101 && mysql_set_server_option(m, MYSQL_OPTION_MULTI_STATEMENTS_ON) != 0)
@@ -1315,6 +1332,7 @@
int i;
check_stmt_closed(obj);
+ free_execute_memory(s);
if (s->param.n != argc)
rb_raise(eMysql, "execute: param_count(%d) != number of argument(%d)", s->param.n, argc);
memset(s->param.bind, 0, sizeof(*(s->param.bind))*argc);
@@ -1489,10 +1507,6 @@
{
struct mysql_stmt* s = DATA_PTR(obj);
check_stmt_closed(obj);
- if (s->res) {
- mysql_free_result(s->res);
- s->res = NULL;
- }
if (mysql_stmt_free_result(s->stmt))
mysql_stmt_raise(s->stmt);
return obj;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/mysql-ruby-2.7.3/README.html new/mysql-ruby-2.7.4/README.html
--- old/mysql-ruby-2.7.3/README.html 2006-12-20 06:31:52.000000000 +0100
+++ new/mysql-ruby-2.7.4/README.html 2007-08-22 01:20:37.000000000 +0200
@@ -1,5 +1,5 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- $Id: README.html,v 1.20 2006-12-20 05:31:52 tommy Exp $ -->
+<!-- $Id: README.html,v 1.21 2007-08-21 23:20:37 tommy Exp $ -->
<html>
<head>
<meta http-equiv="content-style-type" content="text/css">
@@ -814,6 +814,13 @@
<h2>History</h2>
<dl>
+ <dt>2007-08-22
+ <dd>
+ version 2.7.4
+ <ul>
+ <li>BUG: Mysql::Stmt#execute memory leak.
+ </ul>
+
<dt>2006-12-20
<dd>
version 2.7.3
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/mysql-ruby-2.7.3/README_ja.html new/mysql-ruby-2.7.4/README_ja.html
--- old/mysql-ruby-2.7.3/README_ja.html 2006-12-20 06:31:52.000000000 +0100
+++ new/mysql-ruby-2.7.4/README_ja.html 2007-08-22 01:20:37.000000000 +0200
@@ -1,5 +1,5 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- $Id: README_ja.html,v 1.24 2006-12-20 05:31:52 tommy Exp $ -->
+<!-- $Id: README_ja.html,v 1.25 2007-08-21 23:20:37 tommy Exp $ -->
<html>
<head>
<meta http-equiv="content-style-type" content="text/css">
@@ -895,6 +895,13 @@
<h2>����</h2>
<dl>
+ <dt>2007-08-22
+ <dd>
+ version 2.7.4
+ <ul>
+ <li>BUG: Mysql::Stmt#execute �����������Ƥ�����
+ </ul>
+
<dt>2006-12-20
<dd>
version 2.7.3
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/mysql-ruby-2.7.3/test.rb new/mysql-ruby-2.7.4/test.rb
--- old/mysql-ruby-2.7.3/test.rb 2006-12-20 06:31:52.000000000 +0100
+++ new/mysql-ruby-2.7.4/test.rb 2007-08-22 01:29:37.000000000 +0200
@@ -1,5 +1,5 @@
#!/usr/local/bin/ruby
-# $Id: test.rb,v 1.23 2006-12-20 05:31:52 tommy Exp $
+# $Id: test.rb,v 1.24 2007-08-21 23:29:37 tommy Exp $
require "test/unit"
require "./mysql.o"
@@ -16,7 +16,7 @@
end
def test_version()
- assert_equal(20703, Mysql::VERSION)
+ assert_equal(20704, Mysql::VERSION)
end
def test_init()
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org