Hello community, here is the log from the commit of package quvi for openSUSE:Factory checked in at 2014-02-12 17:25:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/quvi (Old) and /work/SRC/openSUSE:Factory/.quvi.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "quvi" Changes: -------- --- /work/SRC/openSUSE:Factory/quvi/quvi.changes 2013-08-30 11:48:17.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.quvi.new/quvi.changes 2014-02-12 17:25:59.000000000 +0100 @@ -1,0 +2,21 @@ +Mon Feb 10 19:28:55 UTC 2014 - [email protected] + +- Update to version 0.9.5: + + Fix compilation errors: + - array initialized from parenthesized string constant. + - comma at end of enumerator list. + + linput: Rewrite input parsing completely. + + quvi-dump: Do not escape reserved chars in URLs. +- Changes from version 0.9.4: + + Add --enable-cookies. + + g_type_init: no longer needs to be called. + + Revise --version output. + + --version: Add "configuration" to output. + + --version: Add QUVI_VERSION_SCRIPTS_CONFIGURATION to output. +- Changes from version 0.9.3.1: + + AC_PREREQ: Bump to 2.69/ + + DOC: Add chevs and (missing) ARGNAMEs to "config:" lines. + + status: Mark message output for translation. + + status: Redo frames to look similar to progressbar frames. + +------------------------------------------------------------------- Old: ---- quvi-0.9.3.tar.xz New: ---- quvi-0.9.5.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ quvi.spec ++++++ --- /var/tmp/diff_new_pack.B76HXH/_old 2014-02-12 17:26:00.000000000 +0100 +++ /var/tmp/diff_new_pack.B76HXH/_new 2014-02-12 17:26:00.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package quvi # -# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,13 +17,13 @@ Name: quvi -Version: 0.9.3 +Version: 0.9.5 Release: 0 Summary: Command line tool for parsing flash media stream URLs License: LGPL-2.1+ Group: Productivity/Multimedia/Other Url: http://quvi.sourceforge.net/ -Source: http://sourceforge.net/projects/quvi/files/0.9/quvi/quvi-0.9.3.tar.xz +Source: http://sourceforge.net/projects/quvi/files/0.9/quvi/quvi-0.9.5.tar.xz BuildRequires: pkg-config BuildRequires: pkgconfig(glib-2.0) >= 2.24 BuildRequires: pkgconfig(gobject-2.0) >= 2.24 ++++++ quvi-0.9.3.tar.xz -> quvi-0.9.5.tar.xz ++++++ ++++ 1847 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/quvi-0.9.3/ChangeLog new/quvi-0.9.5/ChangeLog --- old/quvi-0.9.3/ChangeLog 2013-07-16 16:17:41.000000000 +0200 +++ new/quvi-0.9.5/ChangeLog 2013-11-10 09:01:15.000000000 +0100 @@ -1,3 +1,259 @@ +commit ebc2cd0 +Author: Toni Gundogdu <[email protected]> +Date: 2013-11-10 + + Update NEWS for v0.9.5 + + Signed-off-by: Toni Gundogdu <[email protected]> + +NEWS + +commit 5e2675a +Merge: d796a73 6b67bfb +Author: Toni Gundogdu <[email protected]> +Date: 2013-10-20 + + Merge branch 'tg/next__redo_linput' into next + +commit 6b67bfb +Author: Toni Gundogdu <[email protected]> +Date: 2013-10-20 + + DOC: input: Add file URI note + + Signed-off-by: Toni Gundogdu <[email protected]> + +doc/man1/input.txt + +commit 8dfc090 +Author: Toni Gundogdu <[email protected]> +Date: 2013-10-17 + + lutil_parse_input: Check linput_new return value + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/util/input.c + +commit d92133c +Author: Toni Gundogdu <[email protected]> +Date: 2013-10-17 + + linput: Rewrite input parsing completely + + * FIX (memory leak): Release the GIOChannel created for the stdin + by decrementing the reference count of the <stdin> GIOChannel + + * Do not unescape input URLs + - This was previously done because quvi-dump shamelessly escaped the + URLs completely (incl. the "reserved chars") and g_uri_parse_scheme, + which linput calls (to determine the action it should take with the + input URL), couldn't parse the escaped URI schemes otherwise + + - Any normal applications leave the "reserved chars" unescaped, e.g. + the web browsers + + * linput_new now returns an integer, indicating the success + - Program now exits if input parsing failed (e.g. invalid URI) + + * Follow file URIs + - Making it possible to pass "file://" URIs to the program + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/input/linput.c +src/input/linput.h + +commit d796a73 +Author: Toni Gundogdu <[email protected]> +Date: 2013-10-10 + + quvi-dump: Do not escape reserved chars in URLs + + Other: + * Escape UTF8 chars in the URLs (lprint:{rfc2483,json}) + + See also: + * https://tools.ietf.org/html/rfc3986#section-2.2 + * https://en.wikipedia.org/wiki/Percent-encoding + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/main.c +src/print/json_print.c +src/print/rfc2483_print.c +src/print/xml_print.c + +commit 384a628 +Author: Toni Gundogdu <[email protected]> +Date: 2013-10-10 + + FIX: array initialized from parenthesized string constant (compilation) + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/util/xchg.c + +commit 0c23359 +Author: Toni Gundogdu <[email protected]> +Date: 2013-10-10 + + FIX: comma at end of enumerator list (compilation) + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/pbar/lpbar.c + +commit c862c5b +Author: Toni Gundogdu <[email protected]> +Date: 2013-10-05 + + Update NEWS for v0.9.4 + + Signed-off-by: Toni Gundogdu <[email protected]> + +NEWS + +commit 9dd0250 +Author: Toni Gundogdu <[email protected]> +Date: 2013-10-03 + + g_type_init: no longer needs to be called + + g_type_init has been deprecated since glib 2.35, and no longer needs to + be called. Call it with the earlier versions of glib. + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/main.c + +commit 34d5220 +Author: Toni Gundogdu <[email protected]> +Date: 2013-08-31 + + DOC: manpage: footer: Revise "FURTHER RESOURCES" + + Signed-off-by: Toni Gundogdu <[email protected]> + +doc/footer.txt + +commit 6855f72 +Author: Toni Gundogdu <[email protected]> +Date: 2013-08-31 + + DOC: quvirc(5): Add HTTP section to the example + + Signed-off-by: Toni Gundogdu <[email protected]> + +doc/man5/quvirc.5.txt + +commit 9b955b2 +Author: Toni Gundogdu <[email protected]> +Date: 2013-08-31 + + Add --enable-cookies + + This option binds libquvi QUVI_OPTION_ALLOW_COOKIES, allowing the users + to define the cookie parsing behaviour with libcurl. Cookie support is + disabled by default. + + Signed-off-by: Toni Gundogdu <[email protected]> + +doc/man1/opts-http.txt +src/opts.c +src/opts.h +src/setup.c + +commit 30d6483 +Author: Toni Gundogdu <[email protected]> +Date: 2013-08-29 + + --version: Add "configuration" to output + + Signed-off-by: Toni Gundogdu <[email protected]> + +configure.ac +src/main.c + +commit b0831e0 +Author: Toni Gundogdu <[email protected]> +Date: 2013-08-29 + + --version: Add QUVI_VERSION_SCRIPTS_CONFIGURATION to output + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/main.c + +commit b385738 +Author: Toni Gundogdu <[email protected]> +Date: 2013-08-28 + + Revise --version output + + * Use one g_print call instead of three + * Use VN instead of PACKAGE_VERSION + * Remove "version" from the output + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/main.c + +commit 79106b7 +Author: Toni Gundogdu <[email protected]> +Date: 2013-08-28 + + Update NEWS for v0.9.3.1 + + Signed-off-by: Toni Gundogdu <[email protected]> + +NEWS + +commit 0d0234f +Author: Toni Gundogdu <[email protected]> +Date: 2013-08-26 + + AC_PREREQ: Bump to 2.69 + + Signed-off-by: Toni Gundogdu <[email protected]> + +configure.ac + +commit bd56d12 +Author: Toni Gundogdu <[email protected]> +Date: 2013-08-11 + + DOC: Add chevs and (missing) ARGNAMEs to "config:" lines + + Signed-off-by: Toni Gundogdu <[email protected]> + +doc/man1/opts-core-print-format.txt +doc/man1/opts-core-verbosity.txt +doc/man1/opts-core.txt +doc/man1/opts-exec.txt +doc/man1/opts-http.txt +doc/man1/quvi-get.1.txt + +commit 43c0308 +Author: Toni Gundogdu <[email protected]> +Date: 2013-07-26 + + status: Mark message output for translation + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/status.c + +commit ad7af01 +Author: Toni Gundogdu <[email protected]> +Date: 2013-07-17 + + status: Redo frames to look similar to progressbar frames + + Signed-off-by: Toni Gundogdu <[email protected]> + +src/status.c + commit 57cd091 Author: Toni Gundogdu <[email protected]> Date: 2013-07-16 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/quvi-0.9.3/NEWS new/quvi-0.9.5/NEWS --- old/quvi-0.9.3/NEWS 2013-07-16 16:16:40.000000000 +0200 +++ new/quvi-0.9.5/NEWS 2013-11-10 08:59:40.000000000 +0100 @@ -1,3 +1,38 @@ +v0.9.5 [2013-11-10] + +Toni Gundogdu: + - FIX: compilation errors + - array initialized from parenthesized string constant [384a628] + - comma at end of enumerator list [0c23359] + - linput: Rewrite input parsing completely [d92133c] + - quvi-dump: Do not escape reserved chars in URLs [d796a73] + + 10 files changed, 135 insertions(+), 96 deletions(-) + + +v0.9.4 [2013-10-05] + +Toni Gundogdu: + - Add --enable-cookies [9b955b2] + - g_type_init: no longer needs to be called [9dd0250] + - Revise --version output [b385738] + - --version: Add "configuration" to output [30d6483] + - --version: Add QUVI_VERSION_SCRIPTS_CONFIGURATION to output [b0831e0] + + 8 files changed, 44 insertions(+), 16 deletions(-) + + +v0.9.3.1 [2013-08-28] + +Toni Gundogdu: + - AC_PREREQ: Bump to 2.69 [0d0234f] + - DOC: Add chevs and (missing) ARGNAMEs to "config:" lines [bd56d12] + - status: Mark message output for translation [43c0308] + - status: Redo frames to look similar to progressbar frames [ad7af01] + + 8 files changed, 19 insertions(+), 17 deletions(-) + + v0.9.3 [2013-07-16] Toni Gundogdu: 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/quvi-0.9.3/VERSION new/quvi-0.9.5/VERSION --- old/quvi-0.9.3/VERSION 2013-07-16 16:17:41.000000000 +0200 +++ new/quvi-0.9.5/VERSION 2013-11-10 09:01:15.000000000 +0100 @@ -1 +1 @@ -v0.9.3 +v0.9.5 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/quvi-0.9.3/config.h.in new/quvi-0.9.5/config.h.in --- old/quvi-0.9.3/config.h.in 2013-07-16 16:17:20.000000000 +0200 +++ new/quvi-0.9.5/config.h.in 2013-11-10 09:00:59.000000000 +0100 @@ -1,5 +1,8 @@ /* config.h.in. Generated from configure.ac by autoheader. */ +/* Define to configure invocation command line options */ +#undef BUILD_OPTS + /* We have build time */ #undef BUILD_TIME 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/quvi-0.9.3/configure.ac new/quvi-0.9.5/configure.ac --- old/quvi-0.9.3/configure.ac 2013-07-16 16:14:48.000000000 +0200 +++ new/quvi-0.9.5/configure.ac 2013-10-05 11:38:51.000000000 +0200 @@ -1,11 +1,14 @@ # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. -AC_PREREQ([2.67]) +AC_PREREQ([2.69]) AC_INIT([quvi], m4_esyscmd([./gen-ver.sh -c | tr -d '\n']), [http://quvi.sf.net/bugs/],[],[http://quvi.sf.net/]) +AC_DEFINE_UNQUOTED([BUILD_OPTS], "$@", + [Define to configure invocation command line options]) + AC_CONFIG_SRCDIR([src/main.c]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_AUX_DIR([config.aux]) 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/quvi-0.9.3/doc/footer.txt new/quvi-0.9.5/doc/footer.txt --- old/quvi-0.9.3/doc/footer.txt 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/doc/footer.txt 2013-10-05 11:38:51.000000000 +0200 @@ -1,9 +1,14 @@ FURTHER RESOURCES ----------------- -The development code may be cloned from -`git://repo.or.cz/quvi-tool.git`. The gitweb is accessible at -`http://repo.or.cz/w/quvi-tool.git`. +Home:: + `http://quvi.sourceforge.net/` + +Development code:: + `git://repo.or.cz/quvi-tool.git` + +gitweb:: + `http://repo.or.cz/w/quvi-tool.git` Authors ------- 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/quvi-0.9.3/doc/man1/input.txt new/quvi-0.9.5/doc/man1/input.txt --- old/quvi-0.9.3/doc/man1/input.txt 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/input.txt 2013-11-10 08:58:30.000000000 +0100 @@ -4,5 +4,5 @@ The command will read stdin by default. The input is expected to _contain_ URLs. The command arguments are expected to be either URLs or file paths. If the input is read from either stdin or a file, the -contents are read as RFC2483. +contents are read as RFC2483. The input may contain file URIs. 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/quvi-0.9.3/doc/man1/opts-core-print-format.txt new/quvi-0.9.5/doc/man1/opts-core-print-format.txt --- old/quvi-0.9.3/doc/man1/opts-core-print-format.txt 2013-06-19 17:06:19.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/opts-core-print-format.txt 2013-08-28 17:54:19.000000000 +0200 @@ -9,5 +9,5 @@ NOTE: The default value varies, see DEFAULT BEHAVIOUR. - config: core.print-format + config: core.print-format=<FORMAT> 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/quvi-0.9.3/doc/man1/opts-core-verbosity.txt new/quvi-0.9.5/doc/man1/opts-core-verbosity.txt --- old/quvi-0.9.3/doc/man1/opts-core-verbosity.txt 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/opts-core-verbosity.txt 2013-08-28 17:54:19.000000000 +0200 @@ -6,5 +6,5 @@ - 'mute' - nothing at all + -config: core.verbosity +config: core.verbosity=<LEVEL> 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/quvi-0.9.3/doc/man1/opts-core.txt new/quvi-0.9.5/doc/man1/opts-core.txt --- old/quvi-0.9.3/doc/man1/opts-core.txt 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/opts-core.txt 2013-08-28 17:54:19.000000000 +0200 @@ -29,7 +29,7 @@ NOTE: The first available subtitle language will be chosen if nothing matched the PATTERN - config: core.subtitle-language=PATTERN[,PATTERN,...] + config: core.subtitle-language=<PATTERN[,PATTERN,...]> -s, --stream PATTERN[,PATTERN,...]:: Match a stream using a regex PATTERN. The value may be a @@ -49,5 +49,5 @@ NOTE: The first available stream is selected if nothing matched - config: core.stream=PATTERN[,PATTERN,...] + config: core.stream=<PATTERN[,PATTERN,...]> 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/quvi-0.9.3/doc/man1/opts-exec.txt new/quvi-0.9.5/doc/man1/opts-exec.txt --- old/quvi-0.9.3/doc/man1/opts-exec.txt 2013-07-16 16:14:48.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/opts-exec.txt 2013-08-28 17:54:19.000000000 +0200 @@ -45,5 +45,5 @@ This option may be specified multiple times. In the linkman:quvirc[5] file, specify the commands in a comma-separated list. + -config: exec.external=COMMAND[,COMMAND,...] +config: exec.external=<COMMAND[,COMMAND,...]> 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/quvi-0.9.3/doc/man1/opts-http.txt new/quvi-0.9.5/doc/man1/opts-http.txt --- old/quvi-0.9.3/doc/man1/opts-http.txt 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/opts-http.txt 2013-10-05 11:38:51.000000000 +0200 @@ -1,10 +1,16 @@ HTTP ~~~~ +-c, --enable-cookies:: + Have libcurl parse the received cookies and use them in the subsequent + HTTP requests. + + + config: http.enable-cookies=<boolean> + -u, --user-agent USERAGENT (default: Mozilla/5.0):: Identify as USERAGENT to the HTTP server. NOTE: linkman:libquvi-scripts[7] may override this value - config: http.user-agent + config: http.user-agent=<USERAGENT> 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/quvi-0.9.3/doc/man1/quvi-dump.1 new/quvi-0.9.5/doc/man1/quvi-dump.1 --- old/quvi-0.9.3/doc/man1/quvi-dump.1 2013-07-16 16:17:43.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/quvi-dump.1 2013-11-10 09:01:17.000000000 +0100 @@ -2,12 +2,12 @@ .\" Title: quvi-dump .\" Author: [see the "Authors" section] .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> -.\" Date: 07/16/2013 +.\" Date: 11/10/2013 .\" Manual: quvi Manual -.\" Source: quvi 0.9.3 +.\" Source: quvi 0.9.5 .\" Language: English .\" -.TH "QUVI\-DUMP" "1" "07/16/2013" "quvi 0\&.9\&.3" "quvi Manual" +.TH "QUVI\-DUMP" "1" "11/10/2013" "quvi 0\&.9\&.5" "quvi Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -65,7 +65,7 @@ See \fBquvirc\fR(5) for more information about the groups and the variables that quvi parses\&. .SH "INPUT" .sp -The command will read stdin by default\&. The input is expected to \fIcontain\fR URLs\&. The command arguments are expected to be either URLs or file paths\&. If the input is read from either stdin or a file, the contents are read as RFC2483\&. +The command will read stdin by default\&. The input is expected to \fIcontain\fR URLs\&. The command arguments are expected to be either URLs or file paths\&. If the input is read from either stdin or a file, the contents are read as RFC2483\&. The input may contain file URIs\&. .SH "OPTIONS" .SS "Core" .PP @@ -121,7 +121,7 @@ .RS 4 .\} .nf -config: core\&.subtitle\-language=PATTERN[,PATTERN,\&.\&.\&.] +config: core\&.subtitle\-language=<PATTERN[,PATTERN,\&.\&.\&.]> .fi .if n \{\ .RE @@ -190,7 +190,7 @@ .RS 4 .\} .nf -config: core\&.stream=PATTERN[,PATTERN,\&.\&.\&.] +config: core\&.stream=<PATTERN[,PATTERN,\&.\&.\&.]> .fi .if n \{\ .RE @@ -271,7 +271,7 @@ .RS 4 .\} .nf -config: core\&.print\-format +config: core\&.print\-format=<FORMAT> .fi .if n \{\ .RE @@ -333,7 +333,7 @@ \- nothing at all .RE .sp -config: core\&.verbosity +config: core\&.verbosity=<LEVEL> .RE .SS "Dump" .PP @@ -417,10 +417,17 @@ \fBquvirc\fR(5) file, specify the commands in a comma\-separated list\&. .sp -config: exec\&.external=COMMAND[,COMMAND,\&...] +config: exec\&.external=<COMMAND[,COMMAND,\&...]> .RE .SS "HTTP" .PP +\-c, \-\-enable\-cookies +.RS 4 +Have libcurl parse the received cookies and use them in the subsequent HTTP requests\&. + +config: http\&.enable\-cookies=<boolean> +.RE +.PP \-u, \-\-user\-agent USERAGENT (default: Mozilla/5\&.0) .RS 4 Identify as USERAGENT to the HTTP server\&. @@ -446,7 +453,7 @@ .RS 4 .\} .nf -config: http\&.user\-agent +config: http\&.user\-agent=<USERAGENT> .fi .if n \{\ .RE @@ -588,8 +595,24 @@ .sp \fBquvirc\fR(5), \fBlibquvi\fR(3) .SH "FURTHER RESOURCES" -.sp -The development code may be cloned from git://repo\&.or\&.cz/quvi\-tool\&.git\&. The gitweb is accessible at http://repo\&.or\&.cz/w/quvi\-tool\&.git\&. +.PP +Home +.RS 4 + +http://quvi\&.sourceforge\&.net/ +.RE +.PP +Development code +.RS 4 + +git://repo\&.or\&.cz/quvi\-tool\&.git +.RE +.PP +gitweb +.RS 4 + +http://repo\&.or\&.cz/w/quvi\-tool\&.git +.RE .SH "AUTHORS" .PP Toni Gundogdu <legatvs@gmail\&.com> 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/quvi-0.9.3/doc/man1/quvi-get.1 new/quvi-0.9.5/doc/man1/quvi-get.1 --- old/quvi-0.9.3/doc/man1/quvi-get.1 2013-07-16 16:17:45.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/quvi-get.1 2013-11-10 09:01:19.000000000 +0100 @@ -2,12 +2,12 @@ .\" Title: quvi-get .\" Author: [see the "Authors" section] .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> -.\" Date: 07/16/2013 +.\" Date: 11/10/2013 .\" Manual: quvi Manual -.\" Source: quvi 0.9.3 +.\" Source: quvi 0.9.5 .\" Language: English .\" -.TH "QUVI\-GET" "1" "07/16/2013" "quvi 0\&.9\&.3" "quvi Manual" +.TH "QUVI\-GET" "1" "11/10/2013" "quvi 0\&.9\&.5" "quvi Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -58,7 +58,7 @@ See \fBquvirc\fR(5) for more information about the groups and the variables that quvi parses\&. .SH "INPUT" .sp -The command will read stdin by default\&. The input is expected to \fIcontain\fR URLs\&. The command arguments are expected to be either URLs or file paths\&. If the input is read from either stdin or a file, the contents are read as RFC2483\&. +The command will read stdin by default\&. The input is expected to \fIcontain\fR URLs\&. The command arguments are expected to be either URLs or file paths\&. If the input is read from either stdin or a file, the contents are read as RFC2483\&. The input may contain file URIs\&. .SH "OPTIONS" .SS "Core" .PP @@ -114,7 +114,7 @@ .RS 4 .\} .nf -config: core\&.subtitle\-language=PATTERN[,PATTERN,\&.\&.\&.] +config: core\&.subtitle\-language=<PATTERN[,PATTERN,\&.\&.\&.]> .fi .if n \{\ .RE @@ -183,7 +183,7 @@ .RS 4 .\} .nf -config: core\&.stream=PATTERN[,PATTERN,\&.\&.\&.] +config: core\&.stream=<PATTERN[,PATTERN,\&.\&.\&.]> .fi .if n \{\ .RE @@ -194,7 +194,7 @@ Export the subtitle language to the specified FORMAT\&. The available FORMATs are determined by the current selection of the subtitle export \fIlibquvi\-scripts(7)\fR\&. -config: core\&.subtitle\-export\-format +config: core\&.subtitle\-export\-format=<FORMAT> .RE .PP \-b, \-\-verbosity LEVEL (default: verbose) @@ -253,7 +253,7 @@ \- nothing at all .RE .sp -config: core\&.verbosity +config: core\&.verbosity=<LEVEL> .RE .SS "Exec" .PP @@ -327,7 +327,7 @@ \fBquvirc\fR(5) file, specify the commands in a comma\-separated list\&. .sp -config: exec\&.external=COMMAND[,COMMAND,\&...] +config: exec\&.external=<COMMAND[,COMMAND,\&...]> .RE .SS "Get" .PP @@ -377,7 +377,7 @@ .RE .\} .sp -config: get\&.output\-regex=PATTERN[,PATTERN,\&...] +config: get\&.output\-regex=<PATTERN[,PATTERN,\&...]> .RE .PP \-f, \-\-output\-file FILE @@ -391,14 +391,14 @@ the section called \(lqExec\(rq for a complete list of the supported "property sequences"\&. -config: get\&.output\-name +config: get\&.output\-name=<FORMAT> .RE .PP \-i, \-\-output\-dir DIR (default: cwd) .RS 4 Write the saved media to the DIR\&. -config: get\&.output\-dir +config: get\&.output\-dir=<DIR> .RE .PP \-r, \-\-resume\-from OFFSET (default: 0) @@ -415,7 +415,7 @@ .sp Technical: libcurl requires setting CURLOPT_RESUME_FROM_LARGE before \(oqcurl_easy_perform\(cq is called\&. The the command has no way of knowing whether the transfer should be resumed if \(oqcontent\-length\(cq is not queried by sending a HTTP HEAD request before the transfer begins\&. A possible workaround is to specify from which offset the transfer should continue, but this requires that the user determines the value by hand\&. -config: get\&.resume\-from +config: get\&.resume\-from=<OFFSET> .RE .PP \-k, \-\-skip\-transfer @@ -429,10 +429,17 @@ .RS 4 Do not exceed the transfer RATE (Ki/s)\&. Setting this value to 0 disables the throttle\&. This setting affects only the saving process of the media stream\&. -config: get\&.throttle +config: get\&.throttle=<RATE> .RE .SS "HTTP" .PP +\-c, \-\-enable\-cookies +.RS 4 +Have libcurl parse the received cookies and use them in the subsequent HTTP requests\&. + +config: http\&.enable\-cookies=<boolean> +.RE +.PP \-u, \-\-user\-agent USERAGENT (default: Mozilla/5\&.0) .RS 4 Identify as USERAGENT to the HTTP server\&. @@ -458,7 +465,7 @@ .RS 4 .\} .nf -config: http\&.user\-agent +config: http\&.user\-agent=<USERAGENT> .fi .if n \{\ .RE @@ -627,8 +634,24 @@ .sp \fBquvirc\fR(5), \fBlibquvi\fR(3) .SH "FURTHER RESOURCES" -.sp -The development code may be cloned from git://repo\&.or\&.cz/quvi\-tool\&.git\&. The gitweb is accessible at http://repo\&.or\&.cz/w/quvi\-tool\&.git\&. +.PP +Home +.RS 4 + +http://quvi\&.sourceforge\&.net/ +.RE +.PP +Development code +.RS 4 + +git://repo\&.or\&.cz/quvi\-tool\&.git +.RE +.PP +gitweb +.RS 4 + +http://repo\&.or\&.cz/w/quvi\-tool\&.git +.RE .SH "AUTHORS" .PP Toni Gundogdu <legatvs@gmail\&.com> 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/quvi-0.9.3/doc/man1/quvi-get.1.txt new/quvi-0.9.5/doc/man1/quvi-get.1.txt --- old/quvi-0.9.3/doc/man1/quvi-get.1.txt 2013-07-16 16:14:48.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/quvi-get.1.txt 2013-08-28 17:54:19.000000000 +0200 @@ -40,7 +40,7 @@ FORMATs are determined by the current selection of the subtitle export 'libquvi-scripts(7)'. + - config: core.subtitle-export-format + config: core.subtitle-export-format=<FORMAT> include::opts-core-verbosity.txt[] include::opts-exec.txt[] @@ -77,7 +77,7 @@ %t:s/\s+$// ---- + -config: get.output-regex=PATTERN[,PATTERN,...] +config: get.output-regex=<PATTERN[,PATTERN,...]> -f, --output-file FILE:: Write the media to the specified FILE. @@ -88,12 +88,12 @@ property sequences will be replaced. See <<exec>> for a complete list of the supported "property sequences". + - config: get.output-name + config: get.output-name=<FORMAT> -i, --output-dir DIR (default: cwd):: Write the saved media to the DIR. + - config: get.output-dir + config: get.output-dir=<DIR> -r, --resume-from OFFSET (default: 0):: Specify the offset from which the transfer should continue. If this @@ -121,7 +121,7 @@ possible workaround is to specify from which offset the transfer should continue, but this requires that the user determines the value by hand. + - config: get.resume-from + config: get.resume-from=<OFFSET> -k, --skip-transfer:: Do not save the media. @@ -133,7 +133,7 @@ disables the throttle. This setting affects only the saving process of the media stream. + - config: get.throttle + config: get.throttle=<RATE> include::opts-http.txt[] 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/quvi-0.9.3/doc/man1/quvi-info.1 new/quvi-0.9.5/doc/man1/quvi-info.1 --- old/quvi-0.9.3/doc/man1/quvi-info.1 2013-07-16 16:17:45.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/quvi-info.1 2013-11-10 09:01:19.000000000 +0100 @@ -2,12 +2,12 @@ .\" Title: quvi-info .\" Author: [see the "Authors" section] .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> -.\" Date: 07/16/2013 +.\" Date: 11/10/2013 .\" Manual: quvi Manual -.\" Source: quvi 0.9.3 +.\" Source: quvi 0.9.5 .\" Language: English .\" -.TH "QUVI\-INFO" "1" "07/16/2013" "quvi 0\&.9\&.3" "quvi Manual" +.TH "QUVI\-INFO" "1" "11/10/2013" "quvi 0\&.9\&.5" "quvi Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -282,8 +282,24 @@ .sp \fBquvirc\fR(5), \fBlibquvi\fR(3) .SH "FURTHER RESOURCES" -.sp -The development code may be cloned from git://repo\&.or\&.cz/quvi\-tool\&.git\&. The gitweb is accessible at http://repo\&.or\&.cz/w/quvi\-tool\&.git\&. +.PP +Home +.RS 4 + +http://quvi\&.sourceforge\&.net/ +.RE +.PP +Development code +.RS 4 + +git://repo\&.or\&.cz/quvi\-tool\&.git +.RE +.PP +gitweb +.RS 4 + +http://repo\&.or\&.cz/w/quvi\-tool\&.git +.RE .SH "AUTHORS" .PP Toni Gundogdu <legatvs@gmail\&.com> 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/quvi-0.9.3/doc/man1/quvi-scan.1 new/quvi-0.9.5/doc/man1/quvi-scan.1 --- old/quvi-0.9.3/doc/man1/quvi-scan.1 2013-07-16 16:17:46.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/quvi-scan.1 2013-11-10 09:01:20.000000000 +0100 @@ -2,12 +2,12 @@ .\" Title: quvi-scan .\" Author: [see the "Authors" section] .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> -.\" Date: 07/16/2013 +.\" Date: 11/10/2013 .\" Manual: quvi Manual -.\" Source: quvi 0.9.3 +.\" Source: quvi 0.9.5 .\" Language: English .\" -.TH "QUVI\-SCAN" "1" "07/16/2013" "quvi 0\&.9\&.3" "quvi Manual" +.TH "QUVI\-SCAN" "1" "11/10/2013" "quvi 0\&.9\&.5" "quvi Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -50,7 +50,7 @@ See \fBquvirc\fR(5) for more information about the groups and the variables that quvi parses\&. .SH "INPUT" .sp -The command will read stdin by default\&. The input is expected to \fIcontain\fR URLs\&. The command arguments are expected to be either URLs or file paths\&. If the input is read from either stdin or a file, the contents are read as RFC2483\&. +The command will read stdin by default\&. The input is expected to \fIcontain\fR URLs\&. The command arguments are expected to be either URLs or file paths\&. If the input is read from either stdin or a file, the contents are read as RFC2483\&. The input may contain file URIs\&. .SH "OPTIONS" .SS "Core" .PP @@ -129,7 +129,7 @@ .RS 4 .\} .nf -config: core\&.print\-format +config: core\&.print\-format=<FORMAT> .fi .if n \{\ .RE @@ -191,10 +191,17 @@ \- nothing at all .RE .sp -config: core\&.verbosity +config: core\&.verbosity=<LEVEL> .RE .SS "HTTP" .PP +\-c, \-\-enable\-cookies +.RS 4 +Have libcurl parse the received cookies and use them in the subsequent HTTP requests\&. + +config: http\&.enable\-cookies=<boolean> +.RE +.PP \-u, \-\-user\-agent USERAGENT (default: Mozilla/5\&.0) .RS 4 Identify as USERAGENT to the HTTP server\&. @@ -220,7 +227,7 @@ .RS 4 .\} .nf -config: http\&.user\-agent +config: http\&.user\-agent=<USERAGENT> .fi .if n \{\ .RE @@ -278,8 +285,24 @@ .sp \fBquvirc\fR(5), \fBlibquvi\fR(3) .SH "FURTHER RESOURCES" -.sp -The development code may be cloned from git://repo\&.or\&.cz/quvi\-tool\&.git\&. The gitweb is accessible at http://repo\&.or\&.cz/w/quvi\-tool\&.git\&. +.PP +Home +.RS 4 + +http://quvi\&.sourceforge\&.net/ +.RE +.PP +Development code +.RS 4 + +git://repo\&.or\&.cz/quvi\-tool\&.git +.RE +.PP +gitweb +.RS 4 + +http://repo\&.or\&.cz/w/quvi\-tool\&.git +.RE .SH "AUTHORS" .PP Toni Gundogdu <legatvs@gmail\&.com> 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/quvi-0.9.3/doc/man1/quvi.1 new/quvi-0.9.5/doc/man1/quvi.1 --- old/quvi-0.9.3/doc/man1/quvi.1 2013-07-16 16:17:43.000000000 +0200 +++ new/quvi-0.9.5/doc/man1/quvi.1 2013-11-10 09:01:17.000000000 +0100 @@ -2,12 +2,12 @@ .\" Title: quvi .\" Author: [see the "Authors" section] .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> -.\" Date: 07/16/2013 +.\" Date: 11/10/2013 .\" Manual: quvi Manual -.\" Source: quvi 0.9.3 +.\" Source: quvi 0.9.5 .\" Language: English .\" -.TH "QUVI" "1" "07/16/2013" "quvi 0\&.9\&.3" "quvi Manual" +.TH "QUVI" "1" "11/10/2013" "quvi 0\&.9\&.5" "quvi Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -85,8 +85,24 @@ .sp \fBquvirc\fR(5), \fBlibquvi\fR(3) .SH "FURTHER RESOURCES" -.sp -The development code may be cloned from git://repo\&.or\&.cz/quvi\-tool\&.git\&. The gitweb is accessible at http://repo\&.or\&.cz/w/quvi\-tool\&.git\&. +.PP +Home +.RS 4 + +http://quvi\&.sourceforge\&.net/ +.RE +.PP +Development code +.RS 4 + +git://repo\&.or\&.cz/quvi\-tool\&.git +.RE +.PP +gitweb +.RS 4 + +http://repo\&.or\&.cz/w/quvi\-tool\&.git +.RE .SH "AUTHORS" .PP Toni Gundogdu <legatvs@gmail\&.com> 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/quvi-0.9.3/doc/man5/quvirc.5 new/quvi-0.9.5/doc/man5/quvirc.5 --- old/quvi-0.9.3/doc/man5/quvirc.5 2013-07-16 16:17:47.000000000 +0200 +++ new/quvi-0.9.5/doc/man5/quvirc.5 2013-11-10 09:01:21.000000000 +0100 @@ -2,12 +2,12 @@ .\" Title: quvirc .\" Author: [see the "Authors" section] .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> -.\" Date: 07/16/2013 +.\" Date: 11/10/2013 .\" Manual: quvi Manual -.\" Source: quvi 0.9.3 +.\" Source: quvi 0.9.5 .\" Language: English .\" -.TH "QUVIRC" "5" "07/16/2013" "quvi 0\&.9\&.3" "quvi Manual" +.TH "QUVIRC" "5" "11/10/2013" "quvi 0\&.9\&.5" "quvi Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -127,6 +127,10 @@ output\-name = %t_%i\&.%e resume\-from = \-1 throttle = 500 + +[http] +#user\-agent = foo/1\&.0 +enable\-cookies = true .fi .if n \{\ .RE @@ -135,8 +139,24 @@ .sp \fBquvi-info\fR(1), \fBquvi-dump\fR(1), \fBquvi-get\fR(1), \fBquvi-scan\fR(1) .SH "FURTHER RESOURCES" -.sp -The development code may be cloned from git://repo\&.or\&.cz/quvi\-tool\&.git\&. The gitweb is accessible at http://repo\&.or\&.cz/w/quvi\-tool\&.git\&. +.PP +Home +.RS 4 + +http://quvi\&.sourceforge\&.net/ +.RE +.PP +Development code +.RS 4 + +git://repo\&.or\&.cz/quvi\-tool\&.git +.RE +.PP +gitweb +.RS 4 + +http://repo\&.or\&.cz/w/quvi\-tool\&.git +.RE .SH "AUTHORS" .PP Toni Gundogdu <legatvs@gmail\&.com> 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/quvi-0.9.3/doc/man5/quvirc.5.txt new/quvi-0.9.5/doc/man5/quvirc.5.txt --- old/quvi-0.9.3/doc/man5/quvirc.5.txt 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/doc/man5/quvirc.5.txt 2013-10-05 11:38:51.000000000 +0200 @@ -92,6 +92,10 @@ output-name = %t_%i.%e resume-from = -1 throttle = 500 + +[http] +#user-agent = foo/1.0 +enable-cookies = true ---- SEE ALSO 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/quvi-0.9.3/src/input/linput.c new/quvi-0.9.5/src/input/linput.c --- old/quvi-0.9.3/src/input/linput.c 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/src/input/linput.c 2013-11-10 08:58:30.000000000 +0100 @@ -21,75 +21,44 @@ #include "config.h" #include <unistd.h> +#include <stdlib.h> #include <string.h> #include <glib/gi18n.h> -#include "lutil.h" #include "linput.h" +#include "lutil.h" -static gchar *_read_stdin(linput_t linput) +static gchar *_read_stdin() { - gchar *s, *r, *p; GIOChannel *c; - gsize n, sn; + gchar *r, *s; + gsize n; c = g_io_channel_unix_new(STDIN_FILENO); - s = NULL; - r = NULL; + r = s = NULL; n = 0; while (g_io_channel_read_line(c, &s, NULL, NULL, NULL) != G_IO_STATUS_EOF) { - sn = strlen(s); - p = g_realloc(r, n+sn+1); + gchar *p; + gsize l; + + l = strlen(s); + p = g_realloc(r, n+l+1); + if (p != NULL) { r = p; - memcpy(&(r[n]), s, sn); - n += sn; + memcpy(&r[n], s, l); + n += l; r[n] = '\0'; } g_free(s); - s = NULL; } + g_io_channel_unref(c); return (r); } -static gboolean _has_uri_scheme(const gchar *s, gchar **dst) -{ - gchar *p, *t; - gboolean r; - - t = g_uri_unescape_string(s, NULL); - p = g_uri_parse_scheme(t); - r = (p != NULL) ? TRUE:FALSE; - g_free(p); - - if (dst != NULL && r == TRUE) - *dst = t; - else - g_free(t); - - return (r); -} - -static void _extract_urls(const gchar *b, linput_t l) -{ - gchar **r, *u; - gint i; - - r = g_uri_list_extract_uris(b); - i = 0; - - while (r[i] != NULL) - { - if (_has_uri_scheme(r[i], &u) == TRUE) - l->url.input = lutil_slist_prepend_if_unique(l->url.input, u); - ++i; - } - g_strfreev(r); -} - static gchar *_read_file(const gchar *fpath) { GError *e; @@ -102,72 +71,129 @@ { if (e != NULL) { - g_printerr(_("error: %s: while reading file: %s\n"), - fpath, e->message); + g_printerr(_("error: while reading file: %s\n"), e->message); g_error_free(e); - e = NULL; } } return (r); } -static void _no_rargs(linput_t linput) +static gint _extract_uris(linput_t, const gchar*); + +static gint _read_from_uri(linput_t p, const gchar *u) { - gchar *b = _read_stdin(linput); - if (b != NULL) + GError *e; + gchar *f; + gint r; + + r = EXIT_FAILURE; + e = NULL; + f = g_filename_from_uri(u, NULL, &e); + + if (f !=NULL) + { + gchar *c = _read_file(f); + if (c !=NULL) + { + r = _extract_uris(p, c); + r = EXIT_SUCCESS; + g_free(c); + } + g_free(f); + } + else { - _extract_urls(b, linput); - g_free(b); + g_printerr(_("error: while converting to URI: %s\n"), e->message); + g_error_free(e); } + return (r); } -static void _have_rargs(linput_t linput, const gchar **rargs) +static gint _determine_input(linput_t p, const gboolean try_read_as_file, + const gchar *invalid_msg, const gchar *s) { - static const gchar *_E = - N_("error: ignoring input value `%s': not an URL or a file\n"); + gchar *c; + gint r; - gchar *p, *u; - gint i; + c = g_uri_parse_scheme(s); + r = EXIT_SUCCESS; - i = 0; - while (rargs[i] != NULL) + if ((c ==NULL || strlen(c) ==0) && try_read_as_file ==TRUE) { - p = (gchar*) rargs[i++]; - g_strstrip(p); - - /* If file. */ - if (g_file_test(p, G_FILE_TEST_IS_REGULAR) == TRUE) - { - gchar *b = _read_file(p); - if (b != NULL) - { - _extract_urls(b, linput); - g_free(b); - } - } - /* If URI. */ - else if (_has_uri_scheme(p, &u) == TRUE) + gchar *b = _read_file(s); + if (b != NULL) { - linput->url.input = - lutil_slist_prepend_if_unique(linput->url.input, u); + r = _extract_uris(p, b); + g_free(b); } - /* Unable to determine. */ else - g_printerr(g_dgettext(GETTEXT_PACKAGE, _E), p); + r = EXIT_FAILURE; + } + else if (g_strcmp0(c, "http") ==0 || g_strcmp0(c, "https") ==0) + p->url.input = lutil_slist_prepend_if_unique(p->url.input, s); + else if (g_strcmp0(c, "file") ==0) + r = _read_from_uri(p, s); + else + { + g_printerr(g_dgettext(GETTEXT_PACKAGE, invalid_msg), s); + r = EXIT_FAILURE; } + g_free(c); + return (r); } -void linput_new(linput_t linput, const gchar **rargs) +static gint _extract_uris(linput_t p, const gchar *s) { + static const gchar *E = N_("error: %s: an invalid URI\n"); + + gchar **u; + gint i, r; + + u = g_uri_list_extract_uris(s); + + for (i=0, r=EXIT_SUCCESS; u[i] !=NULL && r==EXIT_SUCCESS; ++i) + r = _determine_input(p, FALSE, E, u[i]); + + g_strfreev(u); + return (r); +} + +static gint _parse_without_rargs(linput_t p) +{ + gchar *c; + gint r; + c = _read_stdin(); + r = _extract_uris(p, c); + g_free(c); + return (r); +} + +static gint _parse_with_rargs(linput_t p, const gchar **rargs) +{ + static const gchar *E = + N_("error: %s: neither a valid URI or a local file\n"); + + gint i, r; + for (i=0, r=EXIT_SUCCESS; rargs[i] !=NULL && r ==EXIT_SUCCESS; ++i) + r = _determine_input(p, TRUE, E, rargs[i]); + + return (r); +} + +gint linput_new(linput_t linput, const gchar **rargs) +{ + gint r; + g_assert(linput != NULL); g_assert(linput->url.input == NULL); if (rargs == NULL || g_strv_length((gchar**) rargs) == 0) - _no_rargs(linput); + r = _parse_without_rargs(linput); else - _have_rargs(linput, rargs); + r = _parse_with_rargs(linput, rargs); linput->url.input = g_slist_reverse(linput->url.input); + return (r); } void linput_free(linput_t linput) 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/quvi-0.9.3/src/input/linput.h new/quvi-0.9.5/src/input/linput.h --- old/quvi-0.9.3/src/input/linput.h 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/src/input/linput.h 2013-11-10 08:58:30.000000000 +0100 @@ -1,5 +1,5 @@ /* quvi - * Copyright (C) 2012 Toni Gundogdu <[email protected]> + * Copyright (C) 2012,2013 Toni Gundogdu <[email protected]> * * This file is part of quvi <http://quvi.sourceforge.net/>. * @@ -31,7 +31,7 @@ typedef struct linput_s *linput_t; -void linput_new(linput_t, const gchar**); +gint linput_new(linput_t, const gchar**); void linput_free(linput_t); #endif /* linput_h */ 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/quvi-0.9.3/src/main.c new/quvi-0.9.5/src/main.c --- old/quvi-0.9.3/src/main.c 2013-07-16 16:14:48.000000000 +0200 +++ new/quvi-0.9.5/src/main.c 2013-11-10 08:58:30.000000000 +0100 @@ -29,6 +29,8 @@ #include "opts.h" #include "cmd.h" +const gchar *reserved_chars = "!*'();:@&=+$,/?#[]"; + struct opts_s opts; gint exit_status; gchar *argv0; @@ -146,24 +148,23 @@ static gint _cmd_version(gint argc, gchar **argv) { - g_print("quvi version %s\n built on %s for %s\n" - " with %s, %s\n\n", - PACKAGE_VERSION, BUILD_TIME, CANONICAL_TARGET, CC, CFLAGS); - - g_print("libquvi version %s\n built on %s for %s\n" + g_print("quvi %s\n built on %s for %s\n" + " with %s, %s\n" + " configuration: %s\n" + "libquvi %s\n built on %s for %s\n" " with %s\n" - " configuration: %s\n\n", + " configuration: %s\n" + "libquvi-scripts %s\n" + " configuration: %s\n", + VN, BUILD_TIME, CANONICAL_TARGET, CC, CFLAGS, BUILD_OPTS, quvi_version(QUVI_VERSION), quvi_version(QUVI_VERSION_BUILD_TIME), quvi_version(QUVI_VERSION_BUILD_TARGET), quvi_version(QUVI_VERSION_BUILD_CC_CFLAGS), - quvi_version(QUVI_VERSION_CONFIGURATION)); - - g_print("libquvi-scripts version %s\n\n", - quvi_version(QUVI_VERSION_SCRIPTS)); - - g_printerr("%s\n", copyr); - + quvi_version(QUVI_VERSION_CONFIGURATION), + quvi_version(QUVI_VERSION_SCRIPTS), + quvi_version(QUVI_VERSION_SCRIPTS_CONFIGURATION)); + g_printerr("\n%s\n", copyr); return (EXIT_SUCCESS); } @@ -239,7 +240,9 @@ argv++; _setup_gettext(); +#if !GLIB_CHECK_VERSION(2,35,0) g_type_init(); +#endif exit_status = _run_internal_cmd(argc, argv); return (_cleanup()); 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/quvi-0.9.3/src/opts.c new/quvi-0.9.5/src/opts.c --- old/quvi-0.9.3/src/opts.c 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/src/opts.c 2013-10-05 11:38:51.000000000 +0200 @@ -119,6 +119,10 @@ }, /* http */ { + "enable-cookies", 'c', 0, G_OPTION_ARG_NONE, &opts.http.enable_cookies, + NULL, NULL + }, + { "user-agent", 'u', 0, G_OPTION_ARG_STRING, &opts.http.user_agent, NULL, NULL }, @@ -259,6 +263,9 @@ /* http */ + lopts_keyfile_get_bool(kf, fpath, g_http, + "enable-cookies", &opts.http.enable_cookies); + lopts_keyfile_get_str(kf, NULL, fpath, g_http, NULL, "user-agent", &opts.http.user_agent); } 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/quvi-0.9.3/src/opts.h new/quvi-0.9.5/src/opts.h --- old/quvi-0.9.3/src/opts.h 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/src/opts.h 2013-10-05 11:38:51.000000000 +0200 @@ -58,6 +58,7 @@ } get; struct { + gboolean enable_cookies; gchar *user_agent; } http; gchar **rargs; 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/quvi-0.9.3/src/pbar/lpbar.c new/quvi-0.9.5/src/pbar/lpbar.c --- old/quvi-0.9.3/src/pbar/lpbar.c 2013-07-15 00:27:04.000000000 +0200 +++ new/quvi-0.9.5/src/pbar/lpbar.c 2013-11-10 08:58:30.000000000 +0100 @@ -29,7 +29,7 @@ { Ki = 1024, Mi = 1048576, - Gi = 1073741824, + Gi = 1073741824 } ieee_1541; #define _s(n) #n 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/quvi-0.9.3/src/print/json_print.c new/quvi-0.9.5/src/print/json_print.c --- old/quvi-0.9.3/src/print/json_print.c 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/src/print/json_print.c 2013-11-10 08:58:30.000000000 +0100 @@ -103,6 +103,8 @@ return (EXIT_SUCCESS); } +extern const gchar *reserved_chars; + void lprint_json_errmsg(const gchar *fmt, ...) { va_list args; @@ -111,7 +113,7 @@ va_start(args, fmt); if (g_vasprintf(&s, fmt, args) >0) { - gchar *e = g_uri_escape_string(s, NULL, TRUE); + gchar *e = g_uri_escape_string(s, reserved_chars, FALSE); g_printerr("{\"error\" : \"%s\"}\n", e); g_free(e); g_free(s); @@ -158,7 +160,7 @@ json_builder_set_member_name(p->b, n); if (s != NULL) { - gchar *e = g_uri_escape_string(s, NULL, TRUE); + gchar *e = g_uri_escape_string(s, reserved_chars, FALSE); json_builder_add_string_value(p->b, e); g_free(e); } @@ -455,7 +457,7 @@ json_builder_begin_object(p->b); json_builder_set_member_name(p->b, "url"); - e = g_uri_escape_string(s, NULL, TRUE); + e = g_uri_escape_string(s, reserved_chars, FALSE); json_builder_add_string_value(p->b, e); json_builder_end_object(p->b); 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/quvi-0.9.3/src/print/rfc2483_print.c new/quvi-0.9.5/src/print/rfc2483_print.c --- old/quvi-0.9.3/src/print/rfc2483_print.c 2013-06-19 17:06:19.000000000 +0200 +++ new/quvi-0.9.5/src/print/rfc2483_print.c 2013-11-10 08:58:30.000000000 +0100 @@ -70,6 +70,8 @@ return (r); } +extern const gchar *reserved_chars; + static gint _print(const rfc2483_t p, const lutilPropertyType pt, const gchar *n, const gchar *s, const gdouble d, const gboolean comment_out, const gboolean escape) @@ -87,7 +89,7 @@ { if (escape == TRUE) { - gchar *e = g_uri_escape_string(s, NULL, TRUE); + gchar *e = g_uri_escape_string(s, reserved_chars, FALSE); g_print("%s%s\n", h, e); g_free(e); } @@ -275,7 +277,7 @@ g_print(_("# Embedded media URLs\n#\n")); while ( (s = quvi_scan_next_media_url(qs)) != NULL) { - gchar *e = g_uri_escape_string(s, NULL, TRUE); + gchar *e = g_uri_escape_string(s, reserved_chars, FALSE); g_print("%s\n", e); g_free(e); } 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/quvi-0.9.3/src/print/xml_print.c new/quvi-0.9.5/src/print/xml_print.c --- old/quvi-0.9.3/src/print/xml_print.c 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/src/print/xml_print.c 2013-11-10 08:58:30.000000000 +0100 @@ -141,15 +141,20 @@ return (r); } +extern const gchar *reserved_chars; + static gint _write_attr(const xml_t p, const gchar *n, const gchar *s) { xmlChar *e; gint r; - e = xmlURIEscapeStr(BAD_CAST s, NULL); + e = xmlURIEscapeStr(BAD_CAST s, BAD_CAST reserved_chars); + + r = (xmlTextWriterWriteAttribute(p->w, BAD_CAST n, e) <0) ? EXIT_FAILURE : EXIT_SUCCESS; + xmlFree(e); if (r != EXIT_SUCCESS) @@ -206,7 +211,7 @@ va_start(args, fmt); if (g_vasprintf(&s, fmt, args) >0) { - xmlChar *e = xmlURIEscapeStr(BAD_CAST s, NULL); + xmlChar *e = xmlURIEscapeStr(BAD_CAST s, BAD_CAST reserved_chars); g_printerr("<?xml version=\"1.0\" encoding=\"UTF-8\"?>" "<error message=\"%s\" />", e); xmlFree(e); 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/quvi-0.9.3/src/setup.c new/quvi-0.9.5/src/setup.c --- old/quvi-0.9.3/src/setup.c 2013-07-16 16:14:48.000000000 +0200 +++ new/quvi-0.9.5/src/setup.c 2013-10-05 11:38:51.000000000 +0200 @@ -71,6 +71,7 @@ r = lutil_quvi_init(q, &o); if (r == EXIT_SUCCESS) { + quvi_set(*q, QUVI_OPTION_ALLOW_COOKIES, opts.http.enable_cookies); quvi_set(*q, QUVI_OPTION_USER_AGENT, opts.http.user_agent); quvi_set(*q, QUVI_OPTION_CALLBACK_STATUS, cb_status); } 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/quvi-0.9.3/src/status.c new/quvi-0.9.5/src/status.c --- old/quvi-0.9.3/src/status.c 2013-07-16 16:14:48.000000000 +0200 +++ new/quvi-0.9.5/src/status.c 2013-08-28 17:54:19.000000000 +0200 @@ -31,9 +31,10 @@ static const gchar *frames[] = { - "o--", - "-o-", - "--o", + "o---", + "-o--", + "--o-", + "---o", NULL }; @@ -46,7 +47,8 @@ { if (frames[curr_frame] == NULL) curr_frame = 0; - s = g_strdup_printf("[%s] %s", frames[curr_frame++], m); + s = g_strdup_printf(C_("Status update with {curr_anim_frame, message}", + "status: %s %s"), frames[curr_frame++], m); } else s = g_strdup(m); 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/quvi-0.9.3/src/util/input.c new/quvi-0.9.5/src/util/input.c --- old/quvi-0.9.3/src/util/input.c 2013-05-19 17:45:18.000000000 +0200 +++ new/quvi-0.9.5/src/util/input.c 2013-11-10 08:58:30.000000000 +0100 @@ -30,7 +30,9 @@ { linput_t l = (linput_t) p; - linput_new(l, rargs); + if (linput_new(l, rargs) != EXIT_SUCCESS) + return (EXIT_FAILURE); + if (g_slist_length(l->url.input) ==0) { g_printerr(_("error: no input URL\n")); 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/quvi-0.9.3/src/util/xchg.c new/quvi-0.9.5/src/util/xchg.c --- old/quvi-0.9.3/src/util/xchg.c 2013-07-14 13:56:34.000000000 +0200 +++ new/quvi-0.9.5/src/util/xchg.c 2013-11-10 08:58:30.000000000 +0100 @@ -47,7 +47,7 @@ {0, 0, NULL} }; -static const gchar default_str[] = N_("default"); +static const gchar *default_str = N_("default"); /* Return a media property value. */ static gchar *_qm_get(quvi_media_t qm, const gint i) -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
