Databse size 0 under CygWin

Lachlan Andrew <[email protected]>
Newsgroups gmane.comp.web.htdig.devel
Organization sourceforge
Message-ID <[email protected]>
Greetings all,

With tireless help from Markus Roehricht, I think the problem of 
database not being created under Cygwin is finally fixed.  The 
problem was that BDB didn't recognise  C:/...  as an absolute path, 
and so prepended "./" for the stand-alone weak-compression database.

Because of my recent track record with introducing bugs (including 
this one), could someone please check through the attached patch 
before I commit it?

Thanks (especially to you, Markus!).

Lachlan

-- 
[email protected]
ht://Dig developer DownUnder  (http://www.htdig.org)
cygwin.patch (text/x-diff, 4.3 KB)
diff -crP cvs/htdig/ChangeLog htdig-cvs/ChangeLog
*** cvs/htdig/ChangeLog	Fri Apr  9 09:44:44 2004
--- htdig-cvs/ChangeLog	Sat Apr 10 12:58:10 2004
***************
*** 1,3 ****
--- 1,8 ----
+ Sat 10 Apr 2004 Lachlan Andrew <lha at users.sourceforge.net>
+ 
+     * db/os_abs.c.win32 (new), db/aclocal.m4, db/configure:  Fix bug #814268
+       Detect DOS-style paths starting "<drive>:" was "absolute paths".
+ 
  Wed Apr  7 17:12:33 2004  Gilles Detillieux  <[email protected]>
  
      * htdig/Retriever.cc (IsValidURL): Fixed bug #931377 so bad_extensions
diff -crP cvs/htdig/STATUS htdig-cvs/STATUS
*** cvs/htdig/STATUS	Thu Feb 19 19:28:35 2004
--- htdig-cvs/STATUS	Sat Apr 10 12:59:15 2004
***************
*** 12,19 ****
  what's currently here.)
  
  SHOWSTOPPERS:
! * --without-zlib  is broken
! * Database compression problems with  CygWin.   PR#814268
  
  KNOWN BUGS:
  (none serious.
--- 12,19 ----
  what's currently here.)
  
  SHOWSTOPPERS:
! * Digging speed is unacceptable.
!   Should we restructure the database, or try to write to it more efficiently?
  
  KNOWN BUGS:
  (none serious.
diff -crP cvs/htdig/db/aclocal.m4 htdig-cvs/db/aclocal.m4
*** cvs/htdig/db/aclocal.m4	Sun Mar 14 12:59:10 2004
--- htdig-cvs/db/aclocal.m4	Sat Apr 10 12:50:11 2004
***************
*** 2800,2805 ****
--- 2800,2810 ----
    need_version=no
    need_lib_prefix=no
  
+   if [ -f os_abs.c.win32 ] ; then
+       mv os_abs.c os_abs.c.unix
+       mv os_abs.c.win32 os_abs.c
+   fi
+ 
    case $GCC,$host_os in
    yes,cygwin* | yes,mingw* | yes,pw32*)
      library_names_spec='$libname.dll.a'
diff -crP cvs/htdig/db/configure htdig-cvs/db/configure
*** cvs/htdig/db/configure	Sun Mar 14 12:59:11 2004
--- htdig-cvs/db/configure	Sat Apr 10 12:50:48 2004
***************
*** 7598,7603 ****
--- 7598,7608 ----
    need_version=no
    need_lib_prefix=no
  
+   if [ -f os_abs.c.win32 ] ; then
+       mv os_abs.c os_abs.c.unix
+       mv os_abs.c.win32 os_abs.c
+   fi
+ 
    case $GCC,$host_os in
    yes,cygwin* | yes,mingw* | yes,pw32*)
      library_names_spec='$libname.dll.a'
diff -crP cvs/htdig/db/os_abs.c.win32 htdig-cvs/db/os_abs.c.win32
*** cvs/htdig/db/os_abs.c.win32	Thu Jan  1 10:00:00 1970
--- htdig-cvs/db/os_abs.c.win32	Sat Apr 10 12:48:29 2004
***************
*** 0 ****
--- 1,33 ----
+ /*-
+  * See the file LICENSE for redistribution information.
+  *
+  * Copyright (c) 1997, 1998, 1999
+  *	Sleepycat Software.  All rights reserved.
+  */
+ 
+ /* Modified 10 April, 2004 by Lachlan Andrew for Windows paths */
+ 
+ #include "db_config.h"
+ 
+ #ifndef lint
+ static const char sccsid[] = "@(#)os_abs.c	11.1 (Sleepycat) 7/25/99";
+ #endif /* not lint */
+ 
+ #ifndef NO_SYSTEM_INCLUDES
+ #include <sys/types.h>
+ #endif
+ 
+ #include "db_int.h"
+ 
+ /*
+  * CDB___os_abspath --
+  *	Return if a path is an absolute path.
+  *
+  * PUBLIC: int CDB___os_abspath __P((const char *));
+  */
+ int
+ CDB___os_abspath(path)
+ 	const char *path;
+ {
+ 	return (path[0] == '/' || path[0] == '\\' || path [1] == ':');
+ }
diff -crP cvs/htdig/htdoc/THANKS.html htdig-cvs/htdoc/THANKS.html
*** cvs/htdig/htdoc/THANKS.html	Wed Mar  3 21:44:27 2004
--- htdig-cvs/htdoc/THANKS.html	Sat Apr 10 12:55:29 2004
***************
*** 6,12 ****
    <body bgcolor="#eef7ff">
  	<h1>ht://Dig: Thanks</h1>
  	<p>
! 	  ht://Dig Copyright &copy; 1995-2003 <a href="THANKS.html">The ht://Dig Group</a><br>
  	  Please see the file <a href="COPYING">COPYING</a> for
  	  license information.
  	</p>
--- 6,12 ----
    <body bgcolor="#eef7ff">
  	<h1>ht://Dig: Thanks</h1>
  	<p>
! 	  ht://Dig Copyright &copy; 1995-2004 <a href="THANKS.html">The ht://Dig Group</a><br>
  	  Please see the file <a href="COPYING">COPYING</a> for
  	  license information.
  	</p>
***************
*** 88,93 ****
--- 88,94 ----
  <li>Robert Ribnitz and the Debian Project for maintaining the <em>man</em> pages.</li>
  <li>Chris-Jason Richards for fixing htnotify under sendmail.</li>
  <li>Phillippe Rochat for fixing whitespace detection in config files.</li>
+ <li>Markus R&ouml;hricht for help debugging a database error under CygWin.</li>
  <li><a href="author.html">Andrew Scherpbier</a> for being the original author and leading the project.</li>
  <li>Ren&eacute; Seindal for updates to the HTML parser and the timeout mechanism.</li>
  <li>Benjamin Smedberg for help with the ht://Dig website.</li>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.