<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to patches</title><link>https://sourceforge.net/p/parchive/patches/</link><description>Recent changes to patches</description><atom:link href="https://sourceforge.net/p/parchive/patches/feed.rss" rel="self"/><language>en</language><lastBuildDate>Sat, 05 Nov 2011 14:47:40 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/parchive/patches/feed.rss" rel="self" type="application/rss+xml"/><item><title>file size &gt;= 2 GiB fix</title><link>https://sourceforge.net/p/parchive/patches/17/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;DiskFile::GetFileSize() in diskfile.cpp uses stat() to determine file size, but st_size is a signed 32 bit integer. We should use stat64(). The attached patch fixes the file size detection on windows.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Szikra Istvan</dc:creator><pubDate>Sat, 05 Nov 2011 14:47:40 -0000</pubDate><guid>https://sourceforge.net7876f6cca2b98a2ba09549bb00b0b67022047797</guid></item><item><title>[libpar2] Safe cancelling of verification/repair</title><link>https://sourceforge.net/p/parchive/patches/16/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;This patch adds the ability to safely cancel the verification or repair process.&lt;/p&gt;
&lt;p&gt;Purpose:&lt;br /&gt;
I use libpar2 in project nzbget (nzbget.sourceforge.net). It's a download daemon, widely used on devices with very slow CPUs, like NAS and routers. On such devices the repair process easily may take few hours, in extreme cases even days. &lt;br /&gt;
I needed the ability to cancel repair without termination of my program.&lt;/p&gt;
&lt;p&gt;Patch:&lt;br /&gt;
The patch introduces new protected field "cancelled" in class Par2Repairer (par2repairer.cpp). The implementation of this class was extended to check the variable after each iteration during verification and repair. If it is set the job interrupts. The patch ensures that all allocated objects are freed.&lt;/p&gt;
&lt;p&gt;Usage:&lt;br /&gt;
Descendants of Par2Repairer can set field "cancelled" to stop the verification or repair. The best place to set the state is in the handler of progress event (sig_progress). If needed the descendants of Par2Repairer may provide a public access to field "cancelled" for other classes.&lt;/p&gt;
&lt;p&gt;Notes:&lt;br /&gt;
1) If the process was cancelled the return status of functions "PreProcess" and "Process" is undefined. They may return eRepairFailed, eFileIOError, etc. I didn't extend the "enum Result" with new code such as "eRepairCancelled" to not break compatibility with existing code which uses libpar2. &lt;br /&gt;
The implementation which uses the cancellation feature, must check the field "cancelled" after the calling of functions "PreProcess" and "Process" before checking the returned value of these functions.&lt;/p&gt;
&lt;p&gt;2) If the process was cancelled no cleanup on disk is being made. The partially constructed files remain on disk as well as original files remain renamed to "*.1". The caller may do cleanup on its own, if required.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Andrey Prygunkov</dc:creator><pubDate>Thu, 30 Oct 2008 10:33:47 -0000</pubDate><guid>https://sourceforge.netec2ede9f667e09e5f4311f7fa116ef3ae0a21a16</guid></item><item><title>[libpar2] two bugfixes: seg fault and memory leak</title><link>https://sourceforge.net/p/parchive/patches/15/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;1. On certain par2-files libpar2 crashes with seg. fault. This bug occurs by calling of progress event.&lt;/p&gt;
&lt;p&gt;2. The patch also fixes a small memory leak.&lt;/p&gt;
&lt;p&gt;For libpar2-0.2.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Andrey Prygunkov</dc:creator><pubDate>Thu, 30 Oct 2008 10:00:18 -0000</pubDate><guid>https://sourceforge.netb6b02d2068f663d119eabe75ee6beb5ba5c3bc1a</guid></item><item><title>Standardize packed structure definitions</title><link>https://sourceforge.net/p/parchive/patches/14/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;The structures defined as packed but also including a MD5Hash structure were not really being packed.  This could be an issue with portability between systems/compilers.&lt;/p&gt;
&lt;p&gt;I think we have always been OK, since none of these structures really need to be packed (I think), but this patch results in the structures really being packed should that be necessary.  As a side effect, all MD5Hash structures are also packed, but again, I don't think they included any padding before, they should not be any different declared packed, other than maybe some compiler specific ordering that is no longer done.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">chasm!killer</dc:creator><pubDate>Mon, 11 Aug 2008 02:12:35 -0000</pubDate><guid>https://sourceforge.net2898d07894978f47908e0cfc1f90a462bbb7c791</guid></item><item><title>Fix a -pthread build issue for Ubuntu Linux</title><link>https://sourceforge.net/p/parchive/patches/13/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;To build from the current top of tree I had to patch the Makefile after running ./configure to add the -pthread flag to the gc++ command macro for compiling and linking.&lt;/p&gt;
&lt;p&gt;The hacks I put into the two files aclocal.m4 and configure.ac are definitely not what should go into a permanent archive, but they do seem to do the right thing.  I did not know how to implement the substitution of the acx_pthread values for the non-pthread ones as described in&lt;/p&gt;
&lt;p&gt;&lt;a href="http://autoconf-archive.cryp.to/acx_pthread.html" rel="nofollow"&gt;http://autoconf-archive.cryp.to/acx_pthread.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;so I just hacked them inline in the macro and copied it to the aclocal.m4 file.  And the change to configure.ac is just to call the hacked acx_pthread macro.&lt;/p&gt;
&lt;p&gt;I also had a second problem with using sysctl() to get the number of processors (the Debian gc++ distributed as part of the Ubuntu distribution does not support the sysctl() method, but rather a sysconf() method.  Since it is completely unrelated to this patch, I'm submitting it as a second patch.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">chasm!killer</dc:creator><pubDate>Mon, 11 Aug 2008 01:17:23 -0000</pubDate><guid>https://sourceforge.netb82e07529ec925c60c1be5b5af83129fee1a85da</guid></item><item><title>Fix for very slow gpar2 operation</title><link>https://sourceforge.net/p/parchive/patches/12/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;GPAR2 was updating its UI many times per second (each time it got a notification from the par2cmdline library).  This was causing it to slow down immensely compared to the par2 command from the command line, especially on computers with slow video cards or fancy renderers.&lt;/p&gt;
&lt;p&gt;Attached is a patch which causes it to update the UI on a (fast) interval instead of potentially hundreds of times per second.&lt;/p&gt;
&lt;p&gt;On this machine it brings it up to par (haha) with the command line version, in terms of speed.  Before patch it was ~ 15 times slower.&lt;/p&gt;
&lt;p&gt;Note:  Patch is for GPAR2.  And only GPAR2.  it refers to files inside GPAR2.  It only refers to the main window cc and main window h.  It just adds a clock watcher that updates at intervals instead of every single notification (~10 hz instead of 1000 per second)&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vektuz</dc:creator><pubDate>Tue, 22 May 2007 00:31:12 -0000</pubDate><guid>https://sourceforge.netb8f02cf71fdced599b806858e7f39e4d42cffcb4</guid></item><item><title>par2cmdline multi processor (win32)</title><link>https://sourceforge.net/p/parchive/patches/11/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;This patch uses the latest CVS files of par2cmdline,&lt;br /&gt;
with patches from macgerard for multiple cpu's on&lt;br /&gt;
GNU/Linux, and enables multiple cpu usage on Win32.&lt;br /&gt;
This significantly increases performance for especially&lt;br /&gt;
the creation of par2-archives.&lt;br /&gt;
Added is a patch file for the source of par2cmdline&lt;br /&gt;
0.4, plus a compiled binary for win32 - needs&lt;br /&gt;
pthreadVC2.dll (for example in c:\windows\system32).&lt;br /&gt;
Requirements for compilation: pthreads-win32&lt;br /&gt;
(http://sourceware.org/pthreads-win32/)&lt;/p&gt;
&lt;p&gt;This patch is untested, usage is entirely at your own&lt;br /&gt;
risk. This patch is solely released here to allow the&lt;br /&gt;
original developers to easily incorporate this patch&lt;br /&gt;
into their own software.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Sander Raaijmakers</dc:creator><pubDate>Sat, 23 Sep 2006 15:46:14 -0000</pubDate><guid>https://sourceforge.net5d1c8da6752c2a18fc9990ef352eb29084c77caf</guid></item><item><title>Fix for glob processing on Linux</title><link>https://sourceforge.net/p/parchive/patches/10/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;If you pass a glob directly to par2cmdline under Linux,&lt;br /&gt;
and the glob expands one or more directories, the&lt;br /&gt;
program will fail emitting the following error message:&lt;/p&gt;
&lt;p&gt;The source file does not exist:&lt;/p&gt;
&lt;p&gt;This patch fixes this issue.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Nick</dc:creator><pubDate>Sun, 03 Sep 2006 21:23:38 -0000</pubDate><guid>https://sourceforge.netc0d002b09dccc3f3f24d3a4c7e8df01c4d04fb31</guid></item><item><title>Support block devices</title><link>https://sourceforge.net/p/parchive/patches/9/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;The following patch to support using block devices &lt;br /&gt;
was submitted to the Debian bug-tracking system and &lt;br /&gt;
will be applied in the next Debian version of &lt;br /&gt;
par2cmdline. It would be great if you would take this &lt;br /&gt;
feature+patch under consideration. =)&lt;/p&gt;
&lt;p&gt;See &lt;br /&gt;
&amp;lt;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=362558&amp;gt; &lt;br /&gt;
for the original report &amp;amp; patch.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Wesley J. Landaker</dc:creator><pubDate>Sun, 04 Jun 2006 19:05:41 -0000</pubDate><guid>https://sourceforge.net49bd9ff7012591191c3c068970f489e35514a11d</guid></item><item><title>FIX: error compiling with gcc 4.0 because of template errors</title><link>https://sourceforge.net/p/parchive/patches/8/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I'm using Fedora 4 of Red Hat and wanted to use &lt;br /&gt;
par2cmdline. I tried to compile the source code of the &lt;br /&gt;
latest version, but ran into "template errors". However, &lt;br /&gt;
Dave C wrote a post and said he had a patch for this &lt;br /&gt;
problem. I tried his patch and it worked. So I promised &lt;br /&gt;
to upload the patch for him. Here it is.&lt;/p&gt;
&lt;p&gt;The patch describes how to modify the file &lt;br /&gt;
reedsolomon.cpp in order to be able to compile the file &lt;br /&gt;
correctly.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Optimus</dc:creator><pubDate>Thu, 04 Aug 2005 12:57:28 -0000</pubDate><guid>https://sourceforge.net403345942f7a7d9dac048b4b3bb9927be2d46fd1</guid></item></channel></rss>