Hello community,
here is the log from the commit of package qrencode for openSUSE:Factory checked in at 2013-12-23 22:19:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qrencode (Old)
and /work/SRC/openSUSE:Factory/.qrencode.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qrencode"
Changes:
--------
--- /work/SRC/openSUSE:Factory/qrencode/qrencode.changes 2013-07-30 16:08:38.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.qrencode.new/qrencode.changes 2013-12-23 22:19:45.000000000 +0100
@@ -1,0 +2,7 @@
+Sat Nov 16 20:56:12 UTC 2013 - asterios.dramis@gmail.com
+
+- Update to 3.4.3:
+ * New option "--rle" has been added to the command line tool.
+ * Bug fixes in the library and command line tool.
+
+-------------------------------------------------------------------
Old:
----
qrencode-3.4.2.tar.bz2
New:
----
qrencode-3.4.3.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ qrencode.spec ++++++
--- /var/tmp/diff_new_pack.hnKXOM/_old 2013-12-23 22:19:45.000000000 +0100
+++ /var/tmp/diff_new_pack.hnKXOM/_new 2013-12-23 22:19:45.000000000 +0100
@@ -19,7 +19,7 @@
%define so_ver 3
Name: qrencode
-Version: 3.4.2
+Version: 3.4.3
Release: 0
Summary: C library for encoding data in a QR Code symbol
License: LGPL-2.1+
++++++ qrencode-3.4.2.tar.bz2 -> qrencode-3.4.3.tar.bz2 ++++++
++++ 1652 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/qrencode-3.4.2/ChangeLog new/qrencode-3.4.3/ChangeLog
--- old/qrencode-3.4.2/ChangeLog 2013-03-01 10:13:16.000000000 +0100
+++ new/qrencode-3.4.3/ChangeLog 2013-08-12 03:56:13.000000000 +0200
@@ -1,3 +1,35 @@
+2013.07.29 Kentaro FUKUCHI
+ [3.4]
+ * configure.ac, README, NEWS:
+ - Bumped version to 3.4.3.
+
+2013.07.16 Kentaro FUKUCHI
+ * qrenc.c:
+ - missing break in switch. (Thanks to ßlúèÇhîp)
+ * qrinput.c:
+ - missing/redundant breaks in some switch statements.
+
+2013.06.17 Kentaro FUKUCHI
+ * qrenc.c:
+ - Merged pull request #29. (Thanks to Daniel Dörrhöfer)
+ - Run length encoding has been made non-default.
+ - New option "--rle" has been instroduced to enable run length encoding
+ for SVG format.
+
+2013.03.30 Kentaro FUKUCHI
+ * qrinput.c:
+ - Renamed a variable ("index") to avoid compile-time warning. (Thanks to
+ Emmanuel Blot)
+ - Range check improved.
+ * autogen.sh:
+ - bug fix.(Thanks to Emmanuel Blot)
+
+2013.03.26 Kentaro FUKUCHI
+ * qrenc.c:
+ - Memory leak bug has been fixed. (Thanks to Hassan Hajji)
+ - Buffer overrun bug has been fixed.
+ - Code cleanups.
+
2013.03.01 Kentaro FUKUCHI
* README, NEWS:
- Documentation update.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/qrencode-3.4.2/NEWS new/qrencode-3.4.3/NEWS
--- old/qrencode-3.4.2/NEWS 2013-03-01 03:32:14.000000000 +0100
+++ new/qrencode-3.4.3/NEWS 2013-08-12 03:56:56.000000000 +0200
@@ -1,11 +1,25 @@
libqrencode NEWS - Overview of changes
======================================
+Version 3.4.3 (2013.8.12)
+------------------------
+* New option "--rle" has been added to the command line tool (Thanks to Daniel
+ Dörrhöfer)
+* Bug fixes. (Thanks to Hassan Hajji, Emmanuel Blot, and ßlúèÇhîp)
+
+Release Note:
+This release contains a couple of bug fixes and a new minor feature of the
+command line tool. Some minor bugs in the library have been fixed.
+
+Run Length Encoding (RLE) for SVG output decreases the size of the output file,
+but it makes complicated to edit the image by SVG editors. A newly introduced
+command line option "--rle" enables RLE. RLE will not be applied if it is not
+given.
+
Version 3.4.2 (2013.3.1)
------------------------
* Bug fix release. (Thanks to chisj, vlad417, Petr and Viona)
-
Release Note:
Micro QR Code encoder had a bug that caused incorrect output (issue #25). Now
the bug has been fixed. Memory leak bug (#24) and insufficient string splitting
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/qrencode-3.4.2/README new/qrencode-3.4.3/README
--- old/qrencode-3.4.2/README 2013-03-01 09:32:23.000000000 +0100
+++ new/qrencode-3.4.3/README 2013-08-11 08:30:14.000000000 +0200
@@ -1,4 +1,4 @@
-libqrencode 3.4.2 - QR Code encoding library
+libqrencode 3.4.3 - QR Code encoding library
GENERAL INFORMATION
===================
@@ -137,6 +137,8 @@
- improved text art patch
Yann Droneaud - improved input validation patch
Viona - bug fix patch for string splitting
+Daniel Dörrhöfer - RLE option
Shigeyuki Hirai, Paul Janssens, wangsai, Gavan Fantom, Matthew Baker, Rob Ryan,
-Fred Steinhaeuser, Terry Burton, chisj, vlad417, Petr
+Fred Steinhaeuser, Terry Burton, chisj, vlad417, Petr, Hassan Hajji,
+Emmanuel Blot, ßlúèÇhîp
- bug report / suggestion
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/qrencode-3.4.2/autogen.sh new/qrencode-3.4.3/autogen.sh
--- old/qrencode-3.4.2/autogen.sh 2012-01-23 07:18:00.000000000 +0100
+++ new/qrencode-3.4.3/autogen.sh 2013-06-18 17:31:32.000000000 +0200
@@ -8,12 +8,13 @@
LIBTOOLIZE=libtoolize
fi
+ACLOCAL_OPT=""
if [ -d /usr/local/share/aclocal ]; then
- ACLOCAL_DIR=/usr/local/share/aclocal
+ ACLOCAL_OPT="-I /usr/local/share/aclocal"
elif [ -d /opt/local/share/aclocal ]; then
- ACLOCAL_DIR=/opt/local/share/aclocal
+ ACLOCAL_OPT="-I /opt/local/share/aclocal"
elif [ -d /usr/share/aclocal ]; then
- ACLOCAL_DIR=/usr/share/aclocal
+ ACLOCAL_OPT="-I /usr/share/aclocal"
fi
if [ ! -d use ]; then
@@ -22,7 +23,7 @@
autoheader
-aclocal -I $ACLOCAL_DIR
+aclocal $ACLOCAL_OPT
$LIBTOOLIZE --automake --copy
automake --add-missing --copy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/qrencode-3.4.2/configure.ac new/qrencode-3.4.3/configure.ac
--- old/qrencode-3.4.2/configure.ac 2013-02-17 07:16:26.000000000 +0100
+++ new/qrencode-3.4.3/configure.ac 2013-07-29 11:16:49.000000000 +0200
@@ -2,7 +2,7 @@
MAJOR_VERSION=3
MINOR_VERSION=4
-MICRO_VERSION=2
+MICRO_VERSION=3
VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION
AC_SUBST(MAJOR_VERSION)
AC_SUBST(MINOR_VERSION)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/qrencode-3.4.2/qrenc.c new/qrencode-3.4.3/qrenc.c
--- old/qrencode-3.4.2/qrenc.c 2013-02-17 07:16:26.000000000 +0100
+++ new/qrencode-3.4.3/qrenc.c 2013-08-11 08:33:01.000000000 +0200
@@ -1,10 +1,8 @@
-/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: t -*-*/
-
/**
* qrencode - QR Code encoder
*
* QR Code encoding tool
- * Copyright (C) 2006-2012 Kentaro Fukuchi
+ * Copyright (C) 2006-2013 Kentaro Fukuchi
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -41,6 +39,7 @@
static int margin = -1;
static int dpi = 72;
static int structured = 0;
+static int rle = 0;
static int micro = 0;
static QRecLevel level = QR_ECLEVEL_L;
static QRencodeMode hint = QR_MODE_8;
@@ -75,6 +74,7 @@
{"casesensitive", no_argument , NULL, 'c'},
{"ignorecase" , no_argument , NULL, 'i'},
{"8bit" , no_argument , NULL, '8'},
+ {"rle" , no_argument , &rle, 1},
{"micro" , no_argument , NULL, 'M'},
{"foreground" , required_argument, NULL, 'f'},
{"background" , required_argument, NULL, 'b'},
@@ -123,9 +123,10 @@
" -i, --ignorecase\n"
" ignore case distinctions and use only upper-case characters.\n\n"
" -8, --8bit encode entire data in 8-bit mode. -k, -c and -i will be ignored.\n\n"
+" --rle enable run-length encoding for SVG.\n\n"
" -M, --micro encode in a Micro QR Code. (experimental)\n\n"
-" --foreground=RRGGBB[AA]\n"
-" --background=RRGGBB[AA]\n"
+" --foreground=RRGGBB[AA]\n"
+" --background=RRGGBB[AA]\n"
" specify foreground/background color in hexadecimal notation.\n"
" 6-digit (RGB) or 8-digit (RGBA) form are supported.\n"
" Color output support available only in PNG and SVG.\n"
@@ -285,6 +286,10 @@
}
palette = (png_colorp) malloc(sizeof(png_color) * 2);
+ if(palette == NULL) {
+ fprintf(stderr, "Failed to allocate memory.\n");
+ exit(EXIT_FAILURE);
+ }
palette[0].red = fg_color[0];
palette[0].green = fg_color[1];
palette[0].blue = fg_color[2];
@@ -350,6 +355,7 @@
fclose(fp);
free(row);
+ free(palette);
return 0;
}
@@ -475,25 +481,35 @@
for(y=0; y<qrcode->width; y++) {
row = (p+(y*qrcode->width));
- /* simple RLE */
- pen = 0;
- x0 = 0;
- for(x=0; x<qrcode->width; x++) {
- if( !pen ) {
- pen = *(row+x)&0x1;
- x0 = x;
- } else {
- if(!(*(row+x)&0x1)) {
- writeSVG_writeRect(fp, x0 + margin, y + margin, x-x0, fg, fg_opacity);
- pen = 0;
+ if( !rle ) {
+ /* no RLE */
+ for(x=0; x<qrcode->width; x++) {
+ if(*(row+x)&0x1) {
+ writeSVG_writeRect(fp, margin + x,
+ margin + y, 1,
+ fg, fg_opacity);
}
}
- }
- if( pen ) {
- writeSVG_writeRect(fp, x0 + margin, y + margin, qrcode->width - x0, fg, fg_opacity);
+ } else {
+ /* simple RLE */
+ pen = 0;
+ x0 = 0;
+ for(x=0; x<qrcode->width; x++) {
+ if( !pen ) {
+ pen = *(row+x)&0x1;
+ x0 = x;
+ } else {
+ if(!(*(row+x)&0x1)) {
+ writeSVG_writeRect(fp, x0 + margin, y + margin, x-x0, fg, fg_opacity);
+ pen = 0;
+ }
+ }
+ }
+ if( pen ) {
+ writeSVG_writeRect(fp, x0 + margin, y + margin, qrcode->width - x0, fg, fg_opacity);
+ }
}
}
-
/* Close QR data viewbox */
fputs( "\t\t</g>\n", fp );
@@ -626,7 +642,6 @@
FILE *fp;
int x, y;
int realwidth;
- unsigned char *p;
const char *white, *reset;
if (use_ansi){
@@ -645,11 +660,10 @@
writeUTF8_margin(fp, realwidth, white, reset, use_ansi);
/* data */
- p = qrcode->data;
for(y = 0; y < qrcode->width; y += 2) {
unsigned char *row1, *row2;
- row1 = p + y*qrcode->width;
- row2 = p + y*qrcode->width + qrcode->width;
+ row1 = qrcode->data + y*qrcode->width;
+ row2 = row1 + qrcode->width;
fputs(white, fp);
@@ -657,14 +671,19 @@
fputs("\342\226\210", fp);
for (x = 0; x < qrcode->width; x++) {
- if ((*(row1 + x) & 1) && (*(row2 + x) & 1))
- fputc(' ', fp);
- else if (*(row1 + x) & 1)
- fputs("\342\226\204", fp);
- else if (*(row2 + x) & 1)
- fputs("\342\226\200", fp);
- else
- fputs("\342\226\210", fp);
+ if(row1[x] & 1) {
+ if(y < qrcode->width - 1 && row2[x] & 1) {
+ fputc(' ', fp);
+ } else {
+ fputs("\342\226\204", fp);
+ }
+ } else {
+ if(y < qrcode->width - 1 && row2[x] & 1) {
+ fputs("\342\226\200", fp);
+ } else {
+ fputs("\342\226\210", fp);
+ }
+ }
}
for (x = 0; x < margin; x++)
@@ -717,7 +736,7 @@
fp = openFile(outfile);
realwidth = (qrcode->width + margin * 2) * 2;
- buffer_s = realwidth + 1;
+ buffer_s = realwidth + 2;
buffer = (char *)malloc( buffer_s );
if(buffer == NULL) {
fprintf(stderr, "Failed to allocate memory.\n");
@@ -1042,6 +1061,7 @@
break;
case 'S':
structured = 1;
+ break;
case 'k':
hint = QR_MODE_KANJI;
break;
@@ -1054,6 +1074,9 @@
case '8':
eightbit = 1;
break;
+ case 'r':
+ rle = 1;
+ break;
case 'M':
micro = 1;
break;
@@ -1073,6 +1096,8 @@
usage(0, 0);
exit(EXIT_SUCCESS);
break;
+ case 0:
+ break;
default:
fprintf(stderr, "Try `qrencode --help' for more information.\n");
exit(EXIT_FAILURE);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/qrencode-3.4.2/qrencode.spec new/qrencode-3.4.3/qrencode.spec
--- old/qrencode-3.4.2/qrencode.spec 2013-03-01 09:39:00.000000000 +0100
+++ new/qrencode-3.4.3/qrencode.spec 2013-08-12 03:57:36.000000000 +0200
@@ -1,4 +1,4 @@
-%define ver 3.4.2
+%define ver 3.4.3
%define rel 1
Name: qrencode
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/qrencode-3.4.2/qrinput.c new/qrencode-3.4.3/qrinput.c
--- old/qrencode-3.4.2/qrinput.c 2012-11-26 13:48:55.000000000 +0100
+++ new/qrencode-3.4.3/qrinput.c 2013-07-29 11:32:19.000000000 +0200
@@ -237,14 +237,14 @@
* Insert a structured-append header to the head of the input data.
* @param input input data.
* @param size number of structured symbols.
- * @param index index number of the symbol. (1 <= index <= size)
+ * @param number index number of the symbol. (1 <= number <= size)
* @param parity parity among input data. (NOTE: each symbol of a set of structured symbols has the same parity data)
* @retval 0 success.
* @retval -1 error occurred and errno is set to indeicate the error. See Execptions for the details.
* @throw EINVAL invalid parameter.
* @throw ENOMEM unable to allocate memory.
*/
-__STATIC int QRinput_insertStructuredAppendHeader(QRinput *input, int size, int index, unsigned char parity)
+__STATIC int QRinput_insertStructuredAppendHeader(QRinput *input, int size, int number, unsigned char parity)
{
QRinput_List *entry;
unsigned char buf[3];
@@ -253,13 +253,13 @@
errno = EINVAL;
return -1;
}
- if(index <= 0 || index > MAX_STRUCTURED_SYMBOLS) {
+ if(number <= 0 || number > size) {
errno = EINVAL;
return -1;
}
buf[0] = (unsigned char)size;
- buf[1] = (unsigned char)index;
+ buf[1] = (unsigned char)number;
buf[2] = parity;
entry = QRinput_List_newEntry(QR_MODE_STRUCTURE, 3, buf);
if(entry == NULL) {
@@ -928,7 +928,6 @@
break;
case QR_MODE_FNC1FIRST:
return MODE_INDICATOR_SIZE;
- break;
case QR_MODE_FNC1SECOND:
return MODE_INDICATOR_SIZE + 8;
default:
@@ -1103,6 +1102,7 @@
break;
case QR_MODE_FNC1SECOND:
ret = QRinput_encodeModeFNC1Second(entry, version);
+ break;
default:
break;
}
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org