X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=db_meta.sh;h=ddbe911181f1d49e2d6090681030359895daa164;hb=a19896a7cce70b09b1c1f646fa763b26a7f3d1c0;hp=e78bcc51dcb11ab7a9446390661cb9f5da4400c0;hpb=5b95c07d89bc78295526bd44137068159c7a9d42;p=serve0 diff --git a/db_meta.sh b/db_meta.sh index e78bcc5..ddbe911 100755 --- a/db_meta.sh +++ b/db_meta.sh @@ -15,7 +15,7 @@ LOCAL_META='local \ META_LENGTH META_WIDTH META_HEIGHT META_TAGS META_COMMENT META_NAME ' -eval "$UNSET_VIDEO" +eval "$UNSET_META" read_meta() { local name="$1" meta_db="$_DATA/.index/meta" @@ -31,10 +31,9 @@ read_meta() { if [ $# -eq 0 ]; then read -r META_LENGTH META_WIDTH META_HEIGHT META_TAGS META_COMMENT META_NAME elif [ "$name" -a -f "$meta_db" -a -r "$meta_db" ]; then - while read -r META_LENGTH META_WIDTH META_HEIGHT META_TAGS META_COMMENT META_NAME; do - [ "${META_NAME%${CR}}" = "$name" ] && break - done <"${meta_db}" - [ "${META_NAME%${CR}}" = "$name" ] || eval "$UNSET_META" + read -r META_LENGTH META_WIDTH META_HEIGHT META_TAGS META_COMMENT META_NAME <<-EOF + $(grep -F " ${name}${CR}" "$meta_db") + EOF fi if [ "$META_NAME" ]; then META_NAME="$(UNSTRING "${META_NAME%${CR}}")" @@ -48,7 +47,7 @@ read_meta() { update_meta(){ local name="${1:=${META_NAME}}" tags comment length width height - eval LENGTH WIDTH HEIGH TAGS COMMENT NAME + local LENGTH WIDTH HEIGH TAGS COMMENT NAME local arg cnt meta_db="$_DATA/.index/meta" [ "${name%%/*}" != "$name" ] \ @@ -75,7 +74,7 @@ update_meta(){ "$(STRING "${name-$(UNSTRING "${NAME%${CR}}")}")" else printf '%i %i %i tags=%s comment=%s %s\r\n' \ - "$length" "$width" "$height" "${TAGS#tags=}" \ + "$LENGTH" "$WIDTH" "$HEIGHT" "${TAGS#tags=}" \ "${COMMENT#comment=}" "${NAME%${CR}}" fi done <"$meta_db" >"${meta_db}.$$"