about summary refs log blame commit diff
path: root/externals/bdb-cygwin.patch
blob: 3f0ee78a7085547154de2fa2958db75a6f9865ce (plain) (tree)
1
2
3
4
5
6
7
8


                                                                           
               

              
  
                                                                      





                                                                            
                                                   


                                  

                            

                                                
diff -rc db-4.5.20-orig/os/os_flock.c db-4.5.20/os/os_flock.c
*** db-4.5.20-orig/os/os_flock.c	2006-10-13 12:36:12.000000000 +0200
--- db-4.5.20/os/os_flock.c	2006-10-13 12:40:11.000000000 +0200
***************
*** 30,35 ****
--- 30,44 ----
  
  	DB_ASSERT(dbenv, F_ISSET(fhp, DB_FH_OPENED) && fhp->fd != -1);
  
+ #ifdef __CYGWIN__
+ 	/*
+ 	 * Windows file locking interferes with read/write operations, so we
+ 	 * map the ranges to an area past the end of the file.
+ 	 */
+ 	DB_ASSERT(dbenv, offset < (off_t) 1 << 62);
+ 	offset += (off_t) 1 << 62;
+ #endif
+ 
  	fl.l_start = offset;
  	fl.l_len = 1;
  	fl.l_type = acquire ? F_WRLCK : F_UNLCK;
Only in db-4.5.20/os: os_flock.c~