home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / gnustuff / tos / updates / update36.zoo / gdbm-1.7.1 / atari_diffs next >
Encoding:
Text File  |  1993-11-20  |  3.9 KB  |  143 lines

  1. RCS file: /net/acae127/home/bammi/etc/src/master/gnu/gdbm/gdbmreorg.c,v
  2. retrieving revision 1.4
  3. diff -c -r1.4 gdbmreorg.c
  4. *** 1.4    1993/11/19 01:49:30
  5. --- gdbmreorg.c    1993/11/20 21:41:55
  6. ***************
  7. *** 166,181 ****
  8. --- 166,205 ----
  9.   
  10.     /* Move the new file to old name. */
  11.   
  12. + #ifndef atarist    /* on the atari you cannot rename before closing */
  13.     if (rename (new_name, dbf->name) != 0)
  14.       {
  15.         gdbm_errno = GDBM_REORGANIZE_FAILED;
  16.         gdbm_close (new_dbf);
  17.         return -1;
  18.       }
  19. + #endif
  20.   
  21.     /* Fix up DBF to have the correct information for the new file. */
  22.     UNLOCK_FILE(dbf);
  23.     close (dbf->desc);
  24. + /* now close and do the rename on the atari, after renaming
  25. +    open back new name back up and seek to end to effectively
  26. +    do what unix would have done
  27. +  */
  28. + #ifdef atarist
  29. +   close(new_dbf->desc);
  30. +   if (rename (new_name, dbf->name) != 0)
  31. +     {
  32. +       gdbm_errno = GDBM_REORGANIZE_FAILED;
  33. +       gdbm_close (new_dbf);
  34. +       return -1;
  35. +     }
  36. +   if((new_dbf->desc = open(dbf->name, O_RDWR)) < 0)
  37. +     {
  38. +       gdbm_errno = GDBM_REORGANIZE_FAILED;
  39. +       gdbm_close (new_dbf);
  40. +       return -1;
  41. +     }
  42. +     lseek(new_dbf->desc, 0L, SEEK_END);
  43. + #endif
  44.     free (dbf->header);
  45.     free (dbf->dir);
  46.   
  47. ===================================================================
  48. RCS file: /net/acae127/home/bammi/etc/src/master/gnu/gdbm/systems.h,v
  49. retrieving revision 1.3
  50. diff -c -r1.3 systems.h
  51. *** 1.3    1993/11/19 01:49:56
  52. --- systems.h    1993/11/20 21:49:46
  53. ***************
  54. *** 90,96 ****
  55.   #else
  56.   
  57.   /* Assume it is done like System V. */
  58.   #define UNLOCK_FILE(dbf) \
  59.       {                    \
  60.         struct flock flock;            \
  61. --- 90,96 ----
  62.   #else
  63.   
  64.   /* Assume it is done like System V. */
  65. ! #ifndef UNLOCK_FILE /* allow redefinition of these in autoconf.h */
  66.   #define UNLOCK_FILE(dbf) \
  67.       {                    \
  68.         struct flock flock;            \
  69. ***************
  70. *** 115,120 ****
  71. --- 115,121 ----
  72.         flock.l_start = flock.l_len = 0L;    \
  73.         lock_val = fcntl (dbf->desc, F_SETLK, &flock);    \
  74.       }
  75. + #endif /* ifndef UNLOCK_FILE */
  76.   #endif
  77.   
  78.   /* Do we have bcopy?  */
  79. ***************
  80. *** 126,133 ****
  81. --- 127,136 ----
  82.   
  83.   /* Do we have fsync? */
  84.   #if !HAVE_FSYNC
  85. + #ifndef fsync /* allow override in autoconf.h */
  86.   #define fsync(f) {sync(); sync();}
  87.   #endif
  88. + #endif
  89.   
  90.   /* Default block size.  Some systems do not have blocksize in their
  91.      stat record. This code uses the BSD blocksize from stat. */
  92. ***************
  93. *** 142,149 ****
  94. --- 145,154 ----
  95.   #if HAVE_FTRUNCATE
  96.   #define TRUNCATE(dbf) ftruncate (dbf->desc, 0)
  97.   #else
  98. + #ifndef TRUNCATE /* allow override in autoconf.h */
  99.   #define TRUNCATE(dbf) close( open (dbf->name, O_RDWR|O_TRUNC, mode));
  100.   #endif
  101. + #endif
  102.   
  103.   /* Do we have 32bit or 64bit longs? */
  104.   #if LONG_64_BITS || !INT_16_BITS
  105. ===================================================================
  106. RCS file: /net/acae127/home/bammi/etc/src/master/gnu/gdbm/testgdbm.c,v
  107. retrieving revision 1.3
  108. diff -c -r1.3 testgdbm.c
  109. *** 1.3    1993/11/19 01:49:59
  110. --- testgdbm.c    1993/11/20 21:52:15
  111. ***************
  112. *** 207,219 ****
  113.     data_data.dptr = data_line;
  114.   
  115.     if (reader) {
  116. !     gdbm_file = gdbm_open (file_name, block_size, GDBM_READER, 00664, NULL);
  117.     } else if (newdb) {
  118.       gdbm_file =
  119. !         gdbm_open (file_name, block_size, GDBM_NEWDB | fast, 00664, NULL);
  120.     } else {
  121.       gdbm_file =
  122. !         gdbm_open (file_name, block_size, GDBM_WRCREAT | fast, 00664, NULL);
  123.     }
  124.     if (gdbm_file == NULL) {
  125.       printf("gdbm_open failed, %s\n", gdbm_strerror(gdbm_errno));
  126. --- 207,219 ----
  127.     data_data.dptr = data_line;
  128.   
  129.     if (reader) {
  130. !     gdbm_file = gdbm_open (file_name, block_size, GDBM_READER, 0664, NULL);
  131.     } else if (newdb) {
  132.       gdbm_file =
  133. !         gdbm_open (file_name, block_size, GDBM_NEWDB | fast, 0664, NULL);
  134.     } else {
  135.       gdbm_file =
  136. !         gdbm_open (file_name, block_size, GDBM_WRCREAT | fast, 0664, NULL);
  137.     }
  138.     if (gdbm_file == NULL) {
  139.       printf("gdbm_open failed, %s\n", gdbm_strerror(gdbm_errno));
  140.