Andy Fiddaman schrieb: >> That's the line that the patch changes, and that's the old version of the >> line, so something didn't take with your patching. >> >> A. It seems so, but I don't understand, why. Here's the patch: > --- cyrus-imapd-2.3.12/lib/libconfig.c 2008/04/11 20:07:00 1.18 > +++ cyrus-imapd-2.3.12/lib/libconfig.c 2008/04/23 11:00:13 1.18.2.1 > @@ -39,7 +39,7 @@ > * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING > * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. > * > - * $Id: libconfig.c,v 1.18 2008/04/11 20:07:00 murch Exp $ > + * $Id: libconfig.c,v 1.18.2.1 2008/04/23 11:00:13 murch Exp $ > */ > > #include <config.h> > @@ -340,7 +340,7 @@ void config_read_file(const char *filena > while (fgets(buf+len, bufsize-len, infile)) { > if (buf[len]) { > len = strlen(buf); > - if (buf[len-1] == '\n') { > + if (len && buf[len-1] == '\n') { > /* end of line */ > buf[--len] = '\0'; > ../libconfig2.patch (END) and the patching did without error: > imap-1:/export/build/cyrus-imapd-2.3.12# patch -p1 < ../libconfig2.patch > patching file lib/libconfig.c So no errors but after installling i still get that segfault. I also tried the other patch from Andy Fiddaman: > --- cyrus-imapd-2.3.12/lib/libconfig.c Tue Apr 22 20:30:33 2008 > +++ cyrus-imapd-2.3.12/lib/libconfig.c Tue Apr 22 20:30:40 2008 > @@ -344,7 +344,7 @@ > /* end of line */ > buf[--len] = '\0'; > > - if (buf[len-1] == '\\') { > + if (len && buf[len-1] == '\\') { > /* line continuation */ > len--; > lineno++; > ../libconfig3.patch (END) but this one got rejected: > imap-1:/export/build/cyrus-imapd-2.3.12# patch -p1 < ../libconfig3.patch > patching file lib/libconfig.c > Hunk #1 FAILED at 344. > 1 out of 1 hunk FAILED -- saving rejects to file lib/libconfig.c.rej I'm not such an expert to see why this one got rejected. Thomas ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html