- Timestamp:
- 12/20/2011 14:36:11 (5 months ago)
- File:
-
- 1 edited
-
trunk/libfiledb.sh.in (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/libfiledb.sh.in
r575 r576 106 106 } 107 107 108 # Purpose: Recursively lock a filedb if it exists 109 # Inputs: filedb 110 # Prints: "recursive" or "original" depending on the type of lock acquired 111 # Returns: 0 if the filedb was locked, 2 on error 112 filedb_lock_if_exists() 113 { 114 if [ $# -ne 1 ]; then 115 return 2 116 fi 117 118 local filedb="$1" 119 120 local lock_type 121 122 lock_type=`filedb_lock "${filedb}"` || return 2 123 124 [ -f "${filedb}" ] && 125 echo "${lock_type}" && 126 return 0 127 128 filedb_unlock "${filedb}" "${lock_type}" 129 return 2 130 } 131 108 132 # Purpose: Unlock a filedb 109 133 # Inputs: filedb, lock type … … 170 194 local lock_type 171 195 172 lock_type=`filedb_lock "${filedb}"` || return 2196 lock_type=`filedb_lock_if_exists "${filedb}"` || return 2 173 197 174 198 awk -F '\0' '{print $1}' "${filedb}" && … … 194 218 local lock_type 195 219 196 lock_type=`filedb_lock "${filedb}"` || return 2220 lock_type=`filedb_lock_if_exists "${filedb}"` || return 2 197 221 198 222 awk -F '\0' '{print $2}' "${filedb}" && … … 220 244 local rv 221 245 222 lock_type=`filedb_lock "${filedb}"` || return 2246 lock_type=`filedb_lock_if_exists "${filedb}"` || return 2 223 247 224 248 awk -F '\0' '{if ($1 == "'"${key}"'") {_assert_exit = 1; exit}}; END {if (_assert_exit) exit 0; exit 1}' "${filedb}" … … 251 275 local value 252 276 253 lock_type=`filedb_lock "${filedb}"` || return 2277 lock_type=`filedb_lock_if_exists "${filedb}"` || return 2 254 278 255 279 filedb_key_exists "${filedb}" "${key}" && … … 279 303 local line 280 304 281 lock_type=`filedb_lock "${filedb}"` || return 2305 lock_type=`filedb_lock_if_exists "${filedb}"` || return 2 282 306 283 307 line=`awk -F '\0' '{if ($1 == "'"${key}"'") print NR}' "${filedb}"` && … … 308 332 local rv 309 333 310 lock_type=`filedb_lock "${filedb}"` || return 2334 lock_type=`filedb_lock_if_exists "${filedb}"` || return 2 311 335 312 336 filedb_key_exists "${filedb}" "${key}"
Note: See TracChangeset
for help on using the changeset viewer.
