From e2c099668e8f4ceb7ed7af9dcfbac2afb902d52e Mon Sep 17 00:00:00 2001 From: hummypkg Date: Tue, 29 Oct 2013 20:51:10 +0000 Subject: [PATCH] add decrypted file touch git-svn-id: file:///root/webif/svn/humax/pkg/src/webif/trunk@1713 2a923420-c742-0410-a762-8d5b09965624 --- CONTROL/control | 2 +- var/mongoose/lib/bin/auto | 4 +++- var/mongoose/lib/fileops | 17 +++++++++++++++++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/CONTROL/control b/CONTROL/control index 3b5fba7..1c5697d 100644 --- a/CONTROL/control +++ b/CONTROL/control @@ -1,7 +1,7 @@ Package: webif Priority: optional Section: web -Version: 1.0.7-4 +Version: 1.0.7-5 Architecture: mipsel Maintainer: af123@hummypkg.org.uk Depends: webif-channelicons(>=1.1.4),mongoose(>=3.0-9),jim(>=0.73-1),jim-oo,jim-sqlite3(>=0.73-1),jim-cgi(>=0.7),jim-binary,service-control(>=1.2),busybox(>=1.20.2-1),lsof,epg(>=1.0.13),hmt(>=1.1.14),ssmtp,anacron,trm(>=1.1),openssl-command,nicesplice,id3v2,file,rsvsync(>=1.0.2),webif-charts(>=1.2),stripts(>=1.2.3),smartmontools,tmenu(>=1.05),ffmpeg,id3v2,multienv(>=1.6) diff --git a/var/mongoose/lib/bin/auto b/var/mongoose/lib/bin/auto index 0a10c64..00382a4 100755 --- a/var/mongoose/lib/bin/auto +++ b/var/mongoose/lib/bin/auto @@ -290,7 +290,7 @@ proc do_decrypt {ts} { dsc $size runplugin predecrypt $ts set flagfile "$tmp/decrypting.$bfile" - exec /mod/bin/busybox/touch $flagfile + file touch $flagfile startclock log " DECRYPT: $rfile" 0 log " DLNA: $url" 0 @@ -331,6 +331,8 @@ proc do_decrypt {ts} { file rename $file "$rfile.encrypted" # Move the decrypted copy into place. file rename "$tmp/$bfile" $file + # Set the file time to match the old file + file touch $file "$rfile.encrypted" # Patch the HMT - quickest way to get back to a playable file. exec /mod/bin/hmt -encrypted "$rfile.hmt" diff --git a/var/mongoose/lib/fileops b/var/mongoose/lib/fileops index da5bcd9..6f181e5 100644 --- a/var/mongoose/lib/fileops +++ b/var/mongoose/lib/fileops @@ -39,10 +39,27 @@ proc {file rename} {{force {}} source target} { } } +proc {file touch} {target {ref ""}} { + try { + if {$ref ne ""} { + if {![file exists $ref]} { + error "ref file does not exist." + } + exec /mod/bin/busybox/touch -r $ref $target + } else { + exec /mod/bin/busybox/touch $target + } + } on error {msg opts} { + incr opts(-level) + return {*}$opts $msg + } +} + local proc file {cmd args} { switch $cmd { "rename" { tailcall {file rename} {*}$args } "copy" { tailcall {file copy} {*}$args } + "touch" { tailcall {file touch} {*}$args } default { tailcall upcall file $cmd {*}$args } } }