mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-14 01:22:33 +00:00
fix lock on tmpbuf directory
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_1_5_X@24486 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
46292d462a
commit
86824e189a
@ -113,7 +113,8 @@ Section "View PDF file"
|
|||||||
|
|
||||||
GetFullPathName $OriginalFile $OriginalFile
|
GetFullPathName $OriginalFile $OriginalFile
|
||||||
${GetFileName} $OriginalFile $OriginalFileName
|
${GetFileName} $OriginalFile $OriginalFileName
|
||||||
${GetParent} $OriginalFile $OriginalDir
|
${GetParent} $OriginalFile $OriginalDir # tmpbuf
|
||||||
|
${GetParent} $OriginalDir $OriginalDir # tmpdir
|
||||||
|
|
||||||
SetOutPath $TEMP # The LyX tmpbuf should not be locked
|
SetOutPath $TEMP # The LyX tmpbuf should not be locked
|
||||||
|
|
||||||
@ -149,23 +150,15 @@ Section "View PDF file"
|
|||||||
# Monitor for updates of the original file
|
# Monitor for updates of the original file
|
||||||
GetFileTime $OriginalFile $OriginalTimeHigh $OriginalTimeLow
|
GetFileTime $OriginalFile $OriginalTimeHigh $OriginalTimeLow
|
||||||
!insertmacro SystemCall "kernel32::FindFirstChangeNotification(t '$OriginalDir', \
|
!insertmacro SystemCall "kernel32::FindFirstChangeNotification(t '$OriginalDir', \
|
||||||
i 0, i ${FILE_NOTIFY_CHANGE_LAST_WRITE}) i.s"
|
i 1, i ${FILE_NOTIFY_CHANGE_LAST_WRITE}) i.s"
|
||||||
Pop $ChangeNotification
|
Pop $ChangeNotification
|
||||||
|
|
||||||
${Do}
|
${Do}
|
||||||
|
|
||||||
!insertmacro SystemCall "kernel32::WaitForSingleObject(i $ChangeNotification, i 10000) i.s"
|
!insertmacro SystemCall "kernel32::WaitForSingleObject(i $ChangeNotification, i 10000) i.s"
|
||||||
Pop $WaitReturn
|
Pop $WaitReturn
|
||||||
|
|
||||||
# Check whether the PDF still exists (if not, LyX is being closed)
|
# Check whether the lock is still active (if not, Adobe Reader is closed)
|
||||||
|
|
||||||
${IfNot} ${FileExists} $LockedFile
|
|
||||||
# Quit this application
|
|
||||||
!insertmacro SystemCall "kernel32::FindCloseChangeNotification(i $ChangeNotification)"
|
|
||||||
Quit
|
|
||||||
${EndIf}
|
|
||||||
|
|
||||||
# Check whether the lock is still active (if not, Adobe Reader being closed)
|
|
||||||
|
|
||||||
FileOpen $LockedFile $PDFFile a
|
FileOpen $LockedFile $PDFFile a
|
||||||
|
|
||||||
@ -178,13 +171,14 @@ Section "View PDF file"
|
|||||||
${EndIf}
|
${EndIf}
|
||||||
|
|
||||||
${IfNot} $WaitReturn = ${WAIT_TIMEOUT}
|
${IfNot} $WaitReturn = ${WAIT_TIMEOUT}
|
||||||
# The LyX tmpbuf has been updated
|
|
||||||
|
# The LyX temporary directory has been updated
|
||||||
# Check whether it's the PDF file that has been updated
|
# Check whether it's the PDF file that has been updated
|
||||||
|
|
||||||
GetFileTime $OriginalFile $CurrentTimeHigh $CurrentTimeLow
|
GetFileTime $OriginalFile $CurrentTimeHigh $CurrentTimeLow
|
||||||
|
|
||||||
${if} $OriginalTimeHigh != $CurrentTimeHigh
|
${If} $OriginalTimeHigh != $CurrentTimeHigh
|
||||||
${orif} $OriginalTimeLow != $CurrentTimeLow
|
${OrIf} $OriginalTimeLow != $CurrentTimeLow
|
||||||
# PDF has been modified, update view
|
# PDF has been modified, update view
|
||||||
!insertmacro HideConsole '"$EXEDIR\pdfclose.exe" --file "$PDFFile"'
|
!insertmacro HideConsole '"$EXEDIR\pdfclose.exe" --file "$PDFFile"'
|
||||||
CopyFiles /SILENT $OriginalFile $PDFFile
|
CopyFiles /SILENT $OriginalFile $PDFFile
|
||||||
|
Loading…
Reference in New Issue
Block a user