You can subscribe to this list here.
2003 |
Jan
|
Feb
(160) |
Mar
(119) |
Apr
(111) |
May
(118) |
Jun
(101) |
Jul
(304) |
Aug
(113) |
Sep
(140) |
Oct
(137) |
Nov
(87) |
Dec
(122) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(78) |
Feb
(125) |
Mar
(131) |
Apr
(59) |
May
(121) |
Jun
(166) |
Jul
(150) |
Aug
(137) |
Sep
(73) |
Oct
(58) |
Nov
(27) |
Dec
(60) |
2005 |
Jan
(131) |
Feb
(84) |
Mar
(36) |
Apr
(8) |
May
(28) |
Jun
(20) |
Jul
(10) |
Aug
(72) |
Sep
(76) |
Oct
(34) |
Nov
(3) |
Dec
(29) |
2006 |
Jan
(13) |
Feb
(92) |
Mar
(7) |
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
(4) |
Aug
(17) |
Sep
(5) |
Oct
(2) |
Nov
(8) |
Dec
(12) |
2007 |
Jan
(28) |
Feb
(15) |
Mar
|
Apr
|
May
(8) |
Jun
(4) |
Jul
(5) |
Aug
(8) |
Sep
(20) |
Oct
(38) |
Nov
(65) |
Dec
(92) |
2008 |
Jan
(21) |
Feb
(56) |
Mar
(27) |
Apr
(174) |
May
(25) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Brian S. <xue...@us...> - 2007-09-21 01:12:46
|
Update of /cvsroot/popfile/windows In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22256 Modified Files: Tag: b0_22_2 getssl.nsh Log Message: Now using the latest version of the Inetc plugin. Index: getssl.nsh =================================================================== RCS file: /cvsroot/popfile/windows/getssl.nsh,v retrieving revision 1.6.2.14 retrieving revision 1.6.2.15 diff -C2 -d -r1.6.2.14 -r1.6.2.15 *** getssl.nsh 13 Jul 2007 21:35:51 -0000 1.6.2.14 --- getssl.nsh 21 Sep 2007 01:12:48 -0000 1.6.2.15 *************** *** 68,72 **** ; to the appropriate ${NSISDIR} sub-folders if you wish, but this step is entirely optional. ; ! ; Tested with the inetc.dll plugin timestamped 18 January 2007 15:52:34 ;------------------------------------------------ --- 68,72 ---- ; to the appropriate ${NSISDIR} sub-folders if you wish, but this step is entirely optional. ; ! ; Tested with the inetc.dll plugin timestamped 11 August 2007 19:06:24 ;------------------------------------------------ *************** *** 149,153 **** !define C_PATCH_WEBSITE "http://getpopfile.org/ssl-patch" ! !ifdef INSTALLER !define C_PATCH_CTRL_FILE "${C_POPFILE_MAJOR_VERSION}.${C_POPFILE_MINOR_VERSION}.${C_POPFILE_REVISION}.pcf" --- 149,153 ---- !define C_PATCH_WEBSITE "http://getpopfile.org/ssl-patch" ! !ifdef INSTALLER !define C_PATCH_CTRL_FILE "${C_POPFILE_MAJOR_VERSION}.${C_POPFILE_MINOR_VERSION}.${C_POPFILE_REVISION}.pcf" *************** *** 545,549 **** ; Failed to download POPFile's SSL Patch Control file or the MD5 sums ! StrCpy $G_PATCH_SOURCE "${C_BUILTIN}" DetailPrint "Unable to download data from POPFile website, using built-in SSL patches instead" --- 545,549 ---- ; Failed to download POPFile's SSL Patch Control file or the MD5 sums ! StrCpy $G_PATCH_SOURCE "${C_BUILTIN}" DetailPrint "Unable to download data from POPFile website, using built-in SSL patches instead" *************** *** 553,560 **** !ifdef INSTALLER File "/oname=$PLUGINSDIR\${C_PATCH_CTRL_FILE}" "${C_PATCH_CTRL_FILE}" ! ; 0.22.5 release does not need any SSL patches so "SSL_pm.pat" is not needed here ; File /nonfatal "/oname=$PLUGINSDIR\SSL_pm.pat" "SSL_pm.pat" ! !else File "/oname=$PLUGINSDIR\${C_PATCH_CTRL_FILE}" "..\0.22.x.pcf" --- 553,560 ---- !ifdef INSTALLER File "/oname=$PLUGINSDIR\${C_PATCH_CTRL_FILE}" "${C_PATCH_CTRL_FILE}" ! ; 0.22.5 release does not need any SSL patches so "SSL_pm.pat" is not needed here ; File /nonfatal "/oname=$PLUGINSDIR\SSL_pm.pat" "SSL_pm.pat" ! !else File "/oname=$PLUGINSDIR\${C_PATCH_CTRL_FILE}" "..\0.22.x.pcf" |
From: Brian S. <xue...@us...> - 2007-09-21 01:11:22
|
Update of /cvsroot/popfile/windows In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20426 Modified Files: Tag: b0_22_2 pfi-library.nsh Log Message: To make future maintenance easier MonitorCC.nsi now uses this library instead of having local copies of some of the library functions. To permit non-admin users to correctly detect when POPFile or some of its NSIS-based utilities are running, the LockedList plugin is used instead of code which assumes the user has administrator rights. The current version (v0.3 RC2) of this plugin requires some workarounds to cope with the "unusual" mixed format path used for POPFile. Index: pfi-library.nsh =================================================================== RCS file: /cvsroot/popfile/windows/pfi-library.nsh,v retrieving revision 1.53.4.7 retrieving revision 1.53.4.8 diff -C2 -d -r1.53.4.7 -r1.53.4.8 *** pfi-library.nsh 28 Jan 2007 21:24:28 -0000 1.53.4.7 --- pfi-library.nsh 21 Sep 2007 01:11:23 -0000 1.53.4.8 *************** *** 37,48 **** # (5) IMAPUPDATER defined in add-ons\updateimap.nsi (POPFile 'IMAP Updater' wizard) # (6) INSTALLER defined in installer.nsi (the main installer program, setup.exe) ! # (7) MSGCAPTURE defined in msgcapture.nsi (used to capture POPFile's console messages) ! # (8) PFIDIAG defined in test\pfidiag.nsi (helps diagnose installer-related problems) ! # (9) RESTORE defined in restore.nsi (POPFile 'User Data' Restore utility) ! # (10) RUNPOPFILE defined in runpopfile.nsi (simple front-end for popfile.exe) ! # (11) RUNSQLITE defined in runsqlite.nsi (simple front-end for sqlite.exe/sqlite3.exe) ! # (12) STOP_POPFILE defined in stop_popfile.nsi (the 'POPFile Silent Shutdown' utility) ! # (13) TRANSLATOR defined in test\translator.nsi (main installer translations testbed) ! # (14) TRANSLATOR_AUW defined in test\transAUW.nsi ('Add POPFile User' translations testbed) #-------------------------------------------------------------------------- --- 37,49 ---- # (5) IMAPUPDATER defined in add-ons\updateimap.nsi (POPFile 'IMAP Updater' wizard) # (6) INSTALLER defined in installer.nsi (the main installer program, setup.exe) ! # (7) MONITORCC defined in MonitorCC.nsi (the corpus conversion monitor) ! # (8) MSGCAPTURE defined in msgcapture.nsi (used to capture POPFile's console messages) ! # (9) PFIDIAG defined in test\pfidiag.nsi (helps diagnose installer-related problems) ! # (10) RESTORE defined in restore.nsi (POPFile 'User Data' Restore utility) ! # (11) RUNPOPFILE defined in runpopfile.nsi (simple front-end for popfile.exe) ! # (12) RUNSQLITE defined in runsqlite.nsi (simple front-end for sqlite.exe/sqlite3.exe) ! # (13) STOP_POPFILE defined in stop_popfile.nsi (the 'POPFile Silent Shutdown' utility) ! # (14) TRANSLATOR defined in test\translator.nsi (main installer translations testbed) ! # (15) TRANSLATOR_AUW defined in test\transAUW.nsi ('Add POPFile User' translations testbed) #-------------------------------------------------------------------------- *************** *** 58,62 **** #-------------------------------------------------------------------------- ! !define C_PFI_LIBRARY_VERSION "0.2.4" #-------------------------------------------------------------------------- --- 59,63 ---- #-------------------------------------------------------------------------- ! !define C_PFI_LIBRARY_VERSION "0.3.0" #-------------------------------------------------------------------------- *************** *** 93,96 **** --- 94,103 ---- #-------------------------------------------------------------------------- + # Marker used by the 'PFI_CheckIfLocked' function to detect the end of the input data + #-------------------------------------------------------------------------- + + !define C_EXE_END_MARKER "/EndOfExeList" + + #-------------------------------------------------------------------------- # # Macro which makes it easy to avoid relative jumps when defining macros *************** *** 951,954 **** --- 958,965 ---- # Macro-based Functions which may be used by the installer and uninstaller (in alphabetic order) # + # Macro: PFI_AtLeastWinNT4 + # Installer Function: PFI_AtLeastWinNT4 + # Uninstaller Function: un.PFI_AtLeastWinNT4 + # # Macro: PFI_CheckIfLocked # Installer Function: PFI_CheckIfLocked *************** *** 1073,1079 **** #============================================================================================== #-------------------------------------------------------------------------- ! # Macro: CheckIfLocked # # The installation process and the uninstall process may both use a function which checks if --- 1084,1167 ---- #============================================================================================== + #-------------------------------------------------------------------------- + # Macro: PFI_AtLeastWinNT4 + # + # The installation process and the uninstall process may both need a function which + # detects if we are running on Windows NT4 or later. This macro makes maintenance easier + # by ensuring that both processes use identical functions, with the only difference being + # their names. + # + # NOTE: + # The !insertmacro PFI_AtLeastWinNT4 "" and !insertmacro PFI_AtLeastWinNT4 "un." + # commands are included in this file so the NSIS script can use 'Call PFI_AtLeastWinNT4' + # and 'Call un.PFI_AtLeastWinNT4' without additional preparation. + # + # Inputs: + # (none) + # + # Outputs: + # (top of stack) - 0 if Win9x or WinME, 1 if Win NT4 or higher + # + # Usage (after macro has been 'inserted'): + # + # Call PFI_AtLeastWinNT4 + # Pop $R0 + # + # ($R0 at this point is "0" if running on Win95, Win98, WinME or NT3.x) + #-------------------------------------------------------------------------- + + !macro PFI_AtLeastWinNT4 UN + Function ${UN}PFI_AtLeastWinNT4 + + !define L_RESULT $R9 + !define L_TEMP $R8 + + Push ${L_RESULT} + Push ${L_TEMP} + + ClearErrors + ReadRegStr ${L_RESULT} HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion + IfErrors preNT4system + StrCpy ${L_TEMP} ${L_RESULT} 1 + StrCmp ${L_TEMP} '3' preNT4system + StrCpy ${L_RESULT} "1" + Goto exit + + preNT4system: + StrCpy ${L_RESULT} "0" + + exit: + Pop ${L_TEMP} + Exch ${L_RESULT} + + !undef L_RESULT + !undef L_TEMP + + FunctionEnd + !macroend + + !ifdef ADDSSL | ADDUSER | BACKUP | INSTALLER | MONITORCC | RESTORE + #-------------------------------------------------------------------------- + # Installer Function: PFI_AtLeastWinNT4 + # + # This function is used during the installation process + #-------------------------------------------------------------------------- + + !insertmacro PFI_AtLeastWinNT4 "" + !endif + + !ifdef ADDUSER | INSTALLER + #-------------------------------------------------------------------------- + # Uninstaller Function: un.PFI_AtLeastWinNT4 + # + # This function is used during the uninstall process + #-------------------------------------------------------------------------- + + !insertmacro PFI_AtLeastWinNT4 "un." + !endif + #-------------------------------------------------------------------------- ! # Macro: PFI_CheckIfLocked # # The installation process and the uninstall process may both use a function which checks if *************** *** 1082,1088 **** # names. # ! # The EXE file to be checked depends upon the version of POPFile in use and upon how it has ! # been configured. If the specified EXE file is no longer in use, this function returns an empty ! # string (otherwise it returns the input parameter unchanged). # # NOTE: --- 1170,1199 ---- # names. # ! # There are several different ways to run POPFile so the PFI_CheckIfLocked function accepts a list ! # of full pathnames to the executable files which are to be checked (to make it easier to check ! # the various ways in which POPFile can be run). This list is passed via the stack, with a marker ! # string being used to mark the end of the list. ! # ! # Normally the LockedList plugin will be used to check if any of the specified executable files is ! # is use. This plugin returns its results on the stack, sandwiched between "/start" and "/end" markers ! # ("/start" appears at the top of the stack). If no files are locked, the plugin simply returns both ! # markers on the stack: ! # ! # (top of stack) /start ! # (top of stack - 1) /end ! # ! # Note that if an executable was started using an SFN path then the plugin must also ! # be given the SFN path (if the plugin is only supplied with the equivalent LFN path ! # then it will fail to detect if the executable is locked). ! # ! # As a further complication, if a locked file is found the plugin returns the LFN format ! # even if the input list of executable files used the SFN format. ! # ! # Unfortunately the 'LockedList' plugin relies upon OS features only found in ! # Windows NT4 or later so older systems such as Win9x must be treated as special ! # cases. ! # ! # If none of the specified files is locked then an empty string is returned, ! # otherwise the function returns the path to the first locked file it detects. # # NOTE: *************** *** 1092,1103 **** # # Inputs: ! # (top of stack) - the full path of the EXE file to be checked # # Outputs: ! # (top of stack) - if file is no longer in use, an empty string ("") is returned ! # otherwise the input string is returned # # Usage (after macro has been 'inserted'): # # Push "$INSTDIR\wperl.exe" # Call PFI_CheckIfLocked --- 1203,1220 ---- # # Inputs: ! # (top of stack) - full path of EXE file to be checked ! # (top of stack - 1) - full path of EXE file to be checked ! # ... ! # (top of stack - n) - full path of EXE file to be checked ! # (top of stack - (n + 1)) - end-of-data marker (see C_EXE_END_MARKER definition) # # Outputs: ! # (top of stack) - if none of the files is in use, an empty string ("") ! # is returned, otherwise the path to the first locked ! # file found is returned # # Usage (after macro has been 'inserted'): # + # Push "/EndOfExeList" # Push "$INSTDIR\wperl.exe" # Call PFI_CheckIfLocked *************** *** 1105,1140 **** # # (if the file is no longer in use, $R0 will be "") - # (if the file is still being used, $R0 will be "$INSTDIR\wperl.exe") #-------------------------------------------------------------------------- !macro PFI_CheckIfLocked UN Function ${UN}PFI_CheckIfLocked - !define L_EXE $R9 ; full path to the EXE file which is to be monitored - !define L_FILE_HANDLE $R8 ! Exch ${L_EXE} ! Push ${L_FILE_HANDLE} ! IfFileExists "${L_EXE}" 0 unlocked_exit ! SetFileAttributes "${L_EXE}" NORMAL ! ClearErrors ! FileOpen ${L_FILE_HANDLE} "${L_EXE}" a ! FileClose ${L_FILE_HANDLE} ! IfErrors exit ! unlocked_exit: ! StrCpy ${L_EXE} "" ! exit: ! Pop ${L_FILE_HANDLE} ! Exch ${L_EXE} ! !undef L_EXE ! !undef L_FILE_HANDLE FunctionEnd !macroend ! !ifdef ADDSSL | ADDUSER | BACKUP | INSTALLER | RESTORE #-------------------------------------------------------------------------- # Installer Function: PFI_CheckIfLocked --- 1222,1332 ---- # # (if the file is no longer in use, $R0 will be "") #-------------------------------------------------------------------------- !macro PFI_CheckIfLocked UN Function ${UN}PFI_CheckIfLocked ! !ifndef PFI_CheckIfLocked ! !define PFI_CheckIfLocked ! var /GLOBAL G_CIL_EXE ! var /GLOBAL G_CIL_FILE ! var /GLOBAL G_CIL_FLAG ! var /GLOBAL G_CIL_TEMP ! !endif ! Call ${UN}PFI_AtLeastWinNT4 ! Pop $G_CIL_FLAG ! StrCmp $G_CIL_FLAG "0" specialcase ! ; The target system provides the features required by the LockedList plugin ! ! StrCpy $G_CIL_FLAG "emptylist" ! ! get_exe_path: ! Pop $G_CIL_EXE ! StrCmp $G_CIL_EXE "${C_EXE_END_MARKER}" start_search ! IfFileExists "$G_CIL_EXE" 0 get_exe_path ! StrCpy $G_CIL_FLAG "gotlist" ! ! ; LockedList plugin searches for _exact_ path match so we need to supply LFN and SFN paths ! ; (note that when the SFN path is supplied, the filename part of the path is NOT given in ! ; the SFN format, so "popfileif.exe" is NOT replaced by something like "POPFIL~2.EXE") ! ! GetFullPathName $G_CIL_FILE "$G_CIL_EXE" ! LockedList::AddModule /NOUNLOAD "$G_CIL_FILE" ! Push $G_CIL_FILE ! Call ${UN}PFI_GetParent ! Pop $G_CIL_EXE ! StrLen $G_CIL_TEMP $G_CIL_EXE ! IntOp $G_CIL_TEMP $G_CIL_TEMP + 1 ! StrCpy $G_CIL_FILE $G_CIL_FILE "" $G_CIL_TEMP ! GetFullPathName /SHORT $G_CIL_EXE "$G_CIL_EXE" ! LockedList::AddModule /NOUNLOAD "$G_CIL_EXE\$G_CIL_FILE" ! Goto get_exe_path ! ! start_search: ! StrCmp $G_CIL_FLAG "emptylist" nothing_to_report ! LockedList::SilentSearch ! ! StrCpy $G_CIL_EXE "" ! Pop $G_CIL_TEMP ! StrCmp $G_CIL_TEMP "/start" get_search_result ! MessageBox MB_OK|MB_ICONEXCLAMATION "Unexpected result from LockedList plugin\ ! ${MB_NL}${MB_NL}\ ! ($G_CIL_TEMP)" ! Abort ! ! get_search_result: ! Pop $G_CIL_TEMP ; get "process ID" (or "/end" marker, if no more data) ! StrCmp $G_CIL_TEMP "/end" end_of_locked_list ! StrCmp $G_CIL_EXE "" 0 skip_result ! Pop $G_CIL_EXE ; get the "path to executable" result ! Goto skip_window_caption ! ! skip_result: ! Pop $G_CIL_TEMP ; ignore the "path to executable" result ! ! skip_window_caption: ! Pop $G_CIL_TEMP ; ignore the "window caption" result ! goto get_search_result ! ! nothing_to_report: ! StrCpy $G_CIL_EXE "" ! ! end_of_locked_list: ! Push $G_CIL_EXE ! Goto exit ! ! ; Windows 95, 98, ME and NT3.x are treated as special cases ! ; (because they do not support the LockedList plugin) ! ! specialcase: ! StrCpy $G_CIL_FLAG "" ! ! loop: ! Pop $G_CIL_EXE ! StrCmp $G_CIL_EXE "${C_EXE_END_MARKER}" allread ! StrCmp $G_CIL_FLAG "" 0 loop ! IfFileExists "$G_CIL_EXE" 0 loop ! SetFileAttributes "$G_CIL_EXE" NORMAL ! ClearErrors ! FileOpen $G_CIL_FILE "$G_CIL_EXE" a ! FileClose $G_CIL_FILE ! IfErrors 0 loop ! StrCpy $G_CIL_FLAG "$G_CIL_EXE" ! Goto loop ! ! allread: ! StrCpy $G_CIL_EXE $G_CIL_FLAG ! Push $G_CIL_EXE ! ! exit: FunctionEnd !macroend ! !ifdef ADDSSL | ADDUSER | BACKUP | INSTALLER | MONITORCC | RESTORE #-------------------------------------------------------------------------- # Installer Function: PFI_CheckIfLocked *************** *** 1344,1389 **** Exch ! DetailPrint "Checking '${L_PATH}\popfileb.exe' ..." ! Push "${L_PATH}\popfileb.exe" ; runs POPFile in the background ! Call ${UN}PFI_CheckIfLocked ! Pop ${L_RESULT} ! StrCmp ${L_RESULT} "" 0 exit DetailPrint "Checking '${L_PATH}\popfileib.exe' ..." ! ! Push "${L_PATH}\popfileib.exe" ; runs POPFile in the background with system tray icon ! Call ${UN}PFI_CheckIfLocked ! Pop ${L_RESULT} ! StrCmp ${L_RESULT} "" 0 exit DetailPrint "Checking '${L_PATH}\popfilef.exe' ..." ! ! Push "${L_PATH}\popfilef.exe" ; runs POPFile in the foreground/console window/DOS box ! Call ${UN}PFI_CheckIfLocked ! Pop ${L_RESULT} ! StrCmp ${L_RESULT} "" 0 exit DetailPrint "Checking '${L_PATH}\popfileif.exe' ..." ! ! Push "${L_PATH}\popfileif.exe" ; runs POPFile in the foreground with system tray icon ! Call ${UN}PFI_CheckIfLocked ! Pop ${L_RESULT} ! StrCmp ${L_RESULT} "" 0 exit DetailPrint "Checking '${L_PATH}\wperl.exe' ..." ! ! Push "${L_PATH}\wperl.exe" ; runs POPFile in the background (using popfile.pl) ! Call ${UN}PFI_CheckIfLocked ! Pop ${L_RESULT} ! StrCmp ${L_RESULT} "" 0 exit DetailPrint "Checking '${L_PATH}\perl.exe' ..." - Push "${L_PATH}\perl.exe" ; runs POPFile in the foreground (using popfile.pl) Call ${UN}PFI_CheckIfLocked Pop ${L_RESULT} - exit: Pop ${L_PATH} Exch ${L_RESULT} ; return full path to a locked file or an empty string --- 1536,1562 ---- Exch ! Push "${C_EXE_END_MARKER}" ! DetailPrint "Checking '${L_PATH}\popfileb.exe' ..." ! Push "${L_PATH}\popfileb.exe" ; runs POPFile in the background DetailPrint "Checking '${L_PATH}\popfileib.exe' ..." ! Push "${L_PATH}\popfileib.exe" ; runs POPFile in the background with system tray icon DetailPrint "Checking '${L_PATH}\popfilef.exe' ..." ! Push "${L_PATH}\popfilef.exe" ; runs POPFile in the foreground/console window/DOS box DetailPrint "Checking '${L_PATH}\popfileif.exe' ..." ! Push "${L_PATH}\popfileif.exe" ; runs POPFile in the foreground with system tray icon DetailPrint "Checking '${L_PATH}\wperl.exe' ..." ! Push "${L_PATH}\wperl.exe" ; runs POPFile in the background (using popfile.pl) DetailPrint "Checking '${L_PATH}\perl.exe' ..." + Push "${L_PATH}\perl.exe" ; runs POPFile in the foreground (using popfile.pl) Call ${UN}PFI_CheckIfLocked Pop ${L_RESULT} Pop ${L_PATH} Exch ${L_RESULT} ; return full path to a locked file or an empty string *************** *** 2247,2251 **** !macroend ! !ifndef RUNPOPFILE & RUNSQLITE & STOP_POPFILE & TRANSLATOR #-------------------------------------------------------------------------- # Installer Function: PFI_GetDateTimeStamp --- 2420,2424 ---- !macroend ! !ifndef MONITORCC & RUNPOPFILE & RUNSQLITE & STOP_POPFILE & TRANSLATOR #-------------------------------------------------------------------------- # Installer Function: PFI_GetDateTimeStamp *************** *** 2444,2448 **** !macroend ! !ifndef RUNPOPFILE & RUNSQLITE & STOP_POPFILE & TRANSLATOR #-------------------------------------------------------------------------- # Installer Function: PFI_GetLocalTime --- 2617,2621 ---- !macroend ! !ifndef MONITORCC & RUNPOPFILE & RUNSQLITE & STOP_POPFILE & TRANSLATOR #-------------------------------------------------------------------------- # Installer Function: PFI_GetLocalTime *************** *** 2674,2678 **** !macroend ! !ifdef ADDSSL | ADDUSER | BACKUP | DBSTATUS | INSTALLER | RESTORE | RUNPOPFILE #-------------------------------------------------------------------------- # Installer Function: PFI_GetParent --- 2847,2851 ---- !macroend ! !ifdef ADDSSL | ADDUSER | BACKUP | DBSTATUS | INSTALLER | MONITORCC | RESTORE | RUNPOPFILE #-------------------------------------------------------------------------- # Installer Function: PFI_GetParent *************** *** 2684,2688 **** !endif ! !ifdef ADDUSER #-------------------------------------------------------------------------- # Uninstaller Function: un.PFI_GetParent --- 2857,2861 ---- !endif ! !ifdef ADDUSER | INSTALLER #-------------------------------------------------------------------------- # Uninstaller Function: un.PFI_GetParent *************** *** 3319,3322 **** --- 3492,3496 ---- DetailPrint "Checking '${L_PATH}\pfimsgcapture.exe' ..." + Push "${C_EXE_END_MARKER}" Push "${L_PATH}\pfimsgcapture.exe" Call ${UN}PFI_CheckIfLocked *************** *** 3337,3340 **** --- 3511,3515 ---- pfi_util_a: DetailPrint "Checking '${L_PATH}\msgcapture.exe' ..." + Push "${C_EXE_END_MARKER}" Push "${L_PATH}\msgcapture.exe" Call ${UN}PFI_CheckIfLocked *************** *** 3355,3358 **** --- 3530,3534 ---- pfi_util_b: DetailPrint "Checking '${L_PATH}\stop_pf.exe' ..." + Push "${C_EXE_END_MARKER}" Push "${L_PATH}\stop_pf.exe" Call ${UN}PFI_CheckIfLocked *************** *** 3373,3376 **** --- 3549,3553 ---- pfi_util_c: DetailPrint "Checking '${L_PATH}\pfidiag.exe' ..." + Push "${C_EXE_END_MARKER}" Push "${L_PATH}\pfidiag.exe" Call ${UN}PFI_CheckIfLocked *************** *** 4134,4138 **** !macroend ! !ifndef PFIDIAG & RUNPOPFILE & RUNSQLITE & TRANSLATOR #-------------------------------------------------------------------------- # Installer Function: PFI_StrCheckDecimal --- 4311,4315 ---- !macroend ! !ifndef MONITORCC & PFIDIAG & RUNPOPFILE & RUNSQLITE & TRANSLATOR #-------------------------------------------------------------------------- # Installer Function: PFI_StrCheckDecimal *************** *** 4217,4221 **** !macroend ! !ifndef DBSTATUS & IMAPUPDATER & MSGCAPTURE & RUNSQLITE & STOP_POPFILE & TRANSLATOR #-------------------------------------------------------------------------- # Installer Function: PFI_StrStr --- 4394,4398 ---- !macroend ! !ifndef DBSTATUS & IMAPUPDATER & MONITORCC & MSGCAPTURE & RUNSQLITE & STOP_POPFILE & TRANSLATOR #-------------------------------------------------------------------------- # Installer Function: PFI_StrStr *************** *** 4288,4292 **** !macroend ! !ifndef MSGCAPTURE & PFIDIAG & RUNPOPFILE & RUNSQLITE & STOP_POPFILE & TRANSLATOR_AUW #-------------------------------------------------------------------------- # Installer Function: PFI_TrimNewlines --- 4465,4469 ---- !macroend ! !ifndef MONITORCC & MSGCAPTURE & PFIDIAG & RUNPOPFILE & RUNSQLITE & STOP_POPFILE & TRANSLATOR_AUW #-------------------------------------------------------------------------- # Installer Function: PFI_TrimNewlines *************** *** 4342,4346 **** Function ${UN}PFI_WaitUntilUnlocked !define L_EXE $R9 ; full path to the EXE file which is to be monitored ! !define L_FILE_HANDLE $R8 !define L_TIMEOUT $R7 ; used to avoid an infinite loop --- 4519,4523 ---- Function ${UN}PFI_WaitUntilUnlocked !define L_EXE $R9 ; full path to the EXE file which is to be monitored ! !define L_RESULT $R8 !define L_TIMEOUT $R7 ; used to avoid an infinite loop *************** *** 4360,4376 **** Exch ${L_EXE} ! Push ${L_FILE_HANDLE} Push ${L_TIMEOUT} IfFileExists "${L_EXE}" 0 exit_now - SetFileAttributes "${L_EXE}" NORMAL StrCpy ${L_TIMEOUT} ${C_SHUTDOWN_LIMIT} check_if_unlocked: Sleep ${C_SHUTDOWN_DELAY} ! ClearErrors ! FileOpen ${L_FILE_HANDLE} "${L_EXE}" a ! FileClose ${L_FILE_HANDLE} ! IfErrors 0 exit_now IntOp ${L_TIMEOUT} ${L_TIMEOUT} - 1 IntCmp ${L_TIMEOUT} 0 exit_now exit_now check_if_unlocked --- 4537,4553 ---- Exch ${L_EXE} ! Push ${L_RESULT} Push ${L_TIMEOUT} IfFileExists "${L_EXE}" 0 exit_now StrCpy ${L_TIMEOUT} ${C_SHUTDOWN_LIMIT} check_if_unlocked: Sleep ${C_SHUTDOWN_DELAY} ! Push "${C_EXE_END_MARKER}" ! Push "${L_EXE}" ! Call ${UN}PFI_CheckIfLocked ! Pop ${L_RESULT} ! StrCmp ${L_RESULT} "" exit_now IntOp ${L_TIMEOUT} ${L_TIMEOUT} - 1 IntCmp ${L_TIMEOUT} 0 exit_now exit_now check_if_unlocked *************** *** 4378,4386 **** exit_now: Pop ${L_TIMEOUT} ! Pop ${L_FILE_HANDLE} Pop ${L_EXE} !undef L_EXE ! !undef L_FILE_HANDLE !undef L_TIMEOUT FunctionEnd --- 4555,4563 ---- exit_now: Pop ${L_TIMEOUT} ! Pop ${L_RESULT} Pop ${L_EXE} !undef L_EXE ! !undef L_RESULT !undef L_TIMEOUT FunctionEnd |
From: Brian S. <xue...@us...> - 2007-09-21 01:05:25
|
Update of /cvsroot/popfile/windows/add-ons In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19371 Modified Files: Tag: b0_22_2 addssl.nsi Log Message: Now using the latest version of the Inetc plugin. Updated to work with the new library containing functions which call the LockedList plugin. Index: addssl.nsi =================================================================== RCS file: /cvsroot/popfile/windows/add-ons/addssl.nsi,v retrieving revision 1.3.4.10 retrieving revision 1.3.4.11 diff -C2 -d -r1.3.4.10 -r1.3.4.11 *** addssl.nsi 5 May 2007 12:28:07 -0000 1.3.4.10 --- addssl.nsi 21 Sep 2007 01:05:25 -0000 1.3.4.11 *************** *** 104,108 **** ; appropriate ${NSISDIR} sub-folders if you wish, but this step is entirely optional. ; ! ; Tested with the inetc.dll plugin timestamped 18 January 2007 15:52:34 ;------------------------------------------------ --- 104,108 ---- ; appropriate ${NSISDIR} sub-folders if you wish, but this step is entirely optional. ; ! ; Tested with the inetc.dll plugin timestamped 11 August 2007 19:06:24 ;------------------------------------------------ *************** *** 265,269 **** Name "POPFile SSL Setup" ! !define C_PFI_VERSION "0.2.9" ; Mention the wizard's version number in the window title --- 265,269 ---- Name "POPFile SSL Setup" ! !define C_PFI_VERSION "0.2.11" ; Mention the wizard's version number in the window title *************** *** 571,574 **** --- 571,575 ---- ReserveFile "${NSISDIR}\Plugins\DumpLog.dll" ReserveFile "${NSISDIR}\Plugins\inetc.dll" + ReserveFile "${NSISDIR}\Plugins\LockedList.dll" ReserveFile "${NSISDIR}\Plugins\md5dll.dll" ReserveFile "${NSISDIR}\Plugins\NSISdl.dll" *************** *** 920,923 **** --- 921,925 ---- Call PFI_WaitUntilUnlocked DetailPrint "Checking if '${L_EXE}' is still locked after NSISdl request..." + Push "${C_EXE_END_MARKER}" Push ${L_EXE} Call PFI_CheckIfLocked |
From: Brian S. <xue...@us...> - 2007-09-21 01:04:11
|
Update of /cvsroot/popfile/windows/add-ons In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18963 Modified Files: Tag: b0_22_2 OnDemand.nsi Log Message: Use the LockedList plugin so a non-admin user can use this utility to start POPFile. The current version (v0.3 RC2) of this plugin requires some workarounds to cope with the "unusual" mixed format path used to start POPFile. Index: OnDemand.nsi =================================================================== RCS file: /cvsroot/popfile/windows/add-ons/Attic/OnDemand.nsi,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** OnDemand.nsi 4 May 2007 18:03:58 -0000 1.1.2.1 --- OnDemand.nsi 21 Sep 2007 01:04:10 -0000 1.1.2.2 *************** *** 48,51 **** --- 48,70 ---- !undef ${NSIS_VERSION}_found + ;-------------------------------------------------- + ; This script requires the 'LockedList' NSIS plugin + ;-------------------------------------------------- + + ; In order to allow this utility to check if a particular executable file is in use + ; a special NSIS plugin (LockedList) is used. This plugin replaces the previous + ; detection method because the old method always reported that a file was locked if + ; the utility was run by a user without administrator rights (even if the file in + ; question was not in use). + ; + ; The 'NSIS Wiki' page for the 'LockedList' plugin (description and download links): + ; http://nsis.sourceforge.net/LockedList_plug-in + ; + ; To compile this script, copy the 'LockedList.dll' file to the standard NSIS plugins folder + ; (${NSISDIR}\Plugins\). The 'LockedList' source and example files can be unzipped to the + ; appropriate ${NSISDIR} sub-folders if you wish, but this step is entirely optional. + ; + ; Tested with version v0.3 RC2 (15:36, 13 July 2007) of the 'LockedList' plugin. + #------------------------------------------------------------------------------------------- # Parameters are supplied via an INI file stored in the same folder as this utility: *************** *** 61,84 **** # Notes: # - # (optional) identifies settings which can be left out of the INI file - # # (1) 'Executable' is the full pathname of the email client program # ! # (2) (optional) 'Parameters' specifies any optional parameters to be passed ! # to the email client (e.g. Eudora can be told where to find its configuration data) # ! # (3) (optional) 'StartupDelay' specifies the delay (in seconds) between starting ! # POPFile and starting the email client. If this parameter is not supplied a ! # delay of zero is assumed. This value should only contain the digits 0 to 9. # - # (4) (optional) 'StopPOPFile' can be either "yes" or "no". If this parameter is - # missing POPFile will be shutdown when the email client exits. #------------------------------------------------------------------------------------------- ;-------------------------------------------------------------------------- ! ; Select standard LZMA compression (to generate smallest EXE file) ;-------------------------------------------------------------------------- ! SetCompressor lzma ;-------------------------------------------------------------------------- --- 80,105 ---- # Notes: # # (1) 'Executable' is the full pathname of the email client program # ! # (2) 'Parameters' specifies any optional parameters to be passed to the email ! # client (e.g. Eudora can be told where to find its configuration data) # ! # (3) 'StartupDelay' specifies the delay (in seconds) between starting POPFile ! # and starting the email client. If this parameter is not supplied a delay ! # of zero is assumed. The delay value should only contain the digits 0 to 9. ! # ! # (4) StopPOPFile' can be either "yes" or "no". If this parameter is missing ! # then "no" is assumed so POPFile will be shut down when the email client exits. ! # ! # The INI file must specify the 'Executable' parameter. If any of the other parameters ! # are missing then default values will be used. # #------------------------------------------------------------------------------------------- ;-------------------------------------------------------------------------- ! ; Select "one block" LZMA compression (to generate smallest EXE file) ;-------------------------------------------------------------------------- ! SetCompressor /SOLID lzma ;-------------------------------------------------------------------------- *************** *** 98,102 **** ;-------------------------------------------------------------------------- ! ; This build is for use with POPFile 0.21.0 (or later) installer-created installations !define C_PFI_PRODUCT "POPFile" --- 119,123 ---- ;-------------------------------------------------------------------------- ! ; This build is for use with installer-created installations of POPFile 0.21.0 or later !define C_PFI_PRODUCT "POPFile" *************** *** 122,126 **** OutFile ${C_OUTFILE} ! !define C_VERSION "0.0.5" ; Specify the icon file for the utility --- 143,147 ---- OutFile ${C_OUTFILE} ! !define C_VERSION "0.0.7" ; Specify the icon file for the utility *************** *** 139,142 **** --- 160,188 ---- #-------------------------------------------------------------------------- + # User Registers (Global) + #-------------------------------------------------------------------------- + + ; This script uses 'User Variables' (with names starting with 'G_') to hold GLOBAL data. + + ;-------------------------------------------------------------------------- + ; General purpose + ;-------------------------------------------------------------------------- + + Var G_TEMP ; general purpose global variable + + ;-------------------------------------------------------------------------- + ; Used in the 'CheckIfExeLocked' function to simply stack handling + ;-------------------------------------------------------------------------- + + Var G_EXETOCHECK ; fullpath to an executable file to be checked by the LockedList plugin + Var G_FILE_HANDLE ; used when target system is not Windows NT4 or later + + ;-------------------------------------------------------------------------- + ; Marker used by the 'CheckIfExeLocked' function to detect the end of the input data + ;-------------------------------------------------------------------------- + + !define C_EXE_END_MARKER "/EndOfExeList" + + #-------------------------------------------------------------------------- ; 'VIProductVersion' format is X.X.X.X where X is a number in range 0 to 65535 *************** *** 149,154 **** VIAddVersionKey "Comments" "POPFile Homepage: http://getpopfile.org/" VIAddVersionKey "CompanyName" "The POPFile Project" ! VIAddVersionKey "LegalTrademarks" "POPFile is a registered trademark of John Graham-Cumming" ! VIAddVersionKey "LegalCopyright" "Copyright (c) ${C_BUILD_YEAR} John Graham-Cumming" VIAddVersionKey "FileDescription" "Run POPFile and Mail Client together" VIAddVersionKey "FileVersion" "${C_VERSION}" --- 195,201 ---- VIAddVersionKey "Comments" "POPFile Homepage: http://getpopfile.org/" VIAddVersionKey "CompanyName" "The POPFile Project" ! VIAddVersionKey "LegalTrademarks" "POPFile is a registered trademark of \ ! John Graham-Cumming" ! VIAddVersionKey "LegalCopyright" "Copyright (c) ${C_BUILD_YEAR} John Graham-Cumming" VIAddVersionKey "FileDescription" "Run POPFile and Mail Client together" VIAddVersionKey "FileVersion" "${C_VERSION}" *************** *** 237,244 **** start_popfile: ReadRegStr $INSTDIR HKCU "Software\POPFile Project\${C_PFI_PRODUCT}\MRI" "RootDir_LFN" ! StrCmp $INSTDIR "" 0 got_path ReadRegStr $INSTDIR HKLM "Software\POPFile Project\${C_PFI_PRODUCT}\MRI" "RootDir_LFN" ! StrCmp $INSTDIR "" 0 got_path MessageBox MB_OK|MB_ICONEXCLAMATION "Error: Unable to find compatible version of POPFile" Goto error_exit --- 284,301 ---- start_popfile: + ReadRegStr $INSTDIR HKCU "Software\POPFile Project\${C_PFI_PRODUCT}\MRI" "RootDir_SFN" + StrCmp $INSTDIR "" try_HKLM + StrCmp $INSTDIR "Not supported" 0 got_path ReadRegStr $INSTDIR HKCU "Software\POPFile Project\${C_PFI_PRODUCT}\MRI" "RootDir_LFN" ! StrCmp $INSTDIR "" 0 got_path ! ! try_HKLM: ! ReadRegStr $INSTDIR HKLM "Software\POPFile Project\${C_PFI_PRODUCT}\MRI" "RootDir_SFN" ! StrCmp $INSTDIR "" popfile_not_found ! StrCmp $INSTDIR "Not supported" 0 got_path ReadRegStr $INSTDIR HKLM "Software\POPFile Project\${C_PFI_PRODUCT}\MRI" "RootDir_LFN" ! StrCmp $INSTDIR "" 0 got_path ! ! popfile_not_found: MessageBox MB_OK|MB_ICONEXCLAMATION "Error: Unable to find compatible version of POPFile" Goto error_exit *************** *** 250,278 **** check_if_POPFile_running: Push "$INSTDIR\popfileb.exe" - Call CheckIfExeLocked - Pop ${L_RESULT} - StrCmp ${L_RESULT} "" 0 exit - Push "$INSTDIR\popfilef.exe" - Call CheckIfExeLocked - Pop ${L_RESULT} - StrCmp ${L_RESULT} "" 0 exit - Push "$INSTDIR\popfileib.exe" - Call CheckIfExeLocked - Pop ${L_RESULT} - StrCmp ${L_RESULT} "" 0 exit - Push "$INSTDIR\popfileif.exe" - Call CheckIfExeLocked - Pop ${L_RESULT} - StrCmp ${L_RESULT} "" 0 exit - Push "$INSTDIR\perl.exe" - Call CheckIfExeLocked - Pop ${L_RESULT} - StrCmp ${L_RESULT} "" 0 exit - Push "$INSTDIR\wperl.exe" Call CheckIfExeLocked --- 307,316 ---- check_if_POPFile_running: + Push "${C_EXE_END_MARKER}" Push "$INSTDIR\popfileb.exe" Push "$INSTDIR\popfilef.exe" Push "$INSTDIR\popfileib.exe" Push "$INSTDIR\popfileif.exe" Push "$INSTDIR\perl.exe" Push "$INSTDIR\wperl.exe" Call CheckIfExeLocked *************** *** 307,311 **** Function Start_MailClient ! !define C_MAX_DELAY 300 ; delay is in seconds so '300' represents 5 minutes !define L_CLIENT_EXEPATH $R9 ; fullpathname of the email client program --- 345,349 ---- Function Start_MailClient ! !define C_MAX_DELAY 300 ; delay is in seconds so '300' represents 5 minutes !define L_CLIENT_EXEPATH $R9 ; fullpathname of the email client program *************** *** 328,340 **** IntCmp ${L_STARTUP_DELAY} 0 start_client invalid_delay_supplied IntCmp ${L_STARTUP_DELAY} ${C_MAX_DELAY} use_delay use_delay ! MessageBox MB_OK|MB_ICONINFORMATION "Maximum StartupDelay is ${C_MAX_DELAY} seconds\ ! ${MB_NL}${MB_NL}\ ! The INI file has 'StartupDelay=${L_STARTUP_DELAY}'\ ! ${MB_NL}${MB_NL}\ ! (see $EXEDIR\${C_INIFILE})" ! Goto start_client invalid_delay_supplied: ! MessageBox MB_OK|MB_ICONINFORMATION "StartupDelay range is 0 to ${C_MAX_DELAY} (in seconds)\ ${MB_NL}${MB_NL}\ The INI file has 'StartupDelay=${L_STARTUP_DELAY}'\ --- 366,377 ---- IntCmp ${L_STARTUP_DELAY} 0 start_client invalid_delay_supplied IntCmp ${L_STARTUP_DELAY} ${C_MAX_DELAY} use_delay use_delay ! StrCpy $G_TEMP "Maximum StartupDelay is ${C_MAX_DELAY} seconds" ! Goto display_delay_msg invalid_delay_supplied: ! StrCpy $G_TEMP "StartupDelay range is 0 to ${C_MAX_DELAY} (in seconds)" ! ! display_delay_msg: ! MessageBox MB_OK|MB_ICONINFORMATION "$G_TEMP\ ${MB_NL}${MB_NL}\ The INI file has 'StartupDelay=${L_STARTUP_DELAY}'\ *************** *** 392,395 **** --- 429,434 ---- !define L_STOP_PF $R3 ; StopPOPFile setting extracted from the utility's INI file !define L_TEXTEND $R2 ; used to ensure correct handling of lines longer than 1023 chars + ; (the standard NSIS compiler has a limit of 1023 characters; + ; if a higher limit is required there is a special build available) Push ${L_CFG} *************** *** 471,480 **** check_exe: ! Push ${L_EXE} ! Call WaitUntilExeUnlocked ! Push ${L_EXE} Call CheckIfExeLocked Pop ${L_EXE} StrCmp ${L_EXE} "" exit manual_shutdown: --- 510,543 ---- check_exe: ! Push "${C_EXE_END_MARKER}" ! Push "$INSTDIR\popfileb.exe" ! Push "$INSTDIR\popfilef.exe" ! Push "$INSTDIR\popfileib.exe" ! Push "$INSTDIR\popfileif.exe" ! Push "$INSTDIR\perl.exe" ! Push "$INSTDIR\wperl.exe" Call CheckIfExeLocked Pop ${L_EXE} StrCmp ${L_EXE} "" exit + StrCpy ${L_PARAM} 0 + StrCpy ${L_RESULT} "" + StrLen ${L_TEXTEND} ${L_EXE} + + nameloop: + IntOp ${L_PARAM} ${L_PARAM} + 1 + IntCmp ${L_PARAM} ${L_TEXTEND} 0 0 gotname + StrCpy ${L_RESULT} ${L_EXE} 1 -${L_PARAM} + StrCmp ${L_RESULT} "\" 0 nameloop + IntOp ${L_PARAM} ${L_PARAM} - 1 + StrCpy ${L_EXE} ${L_EXE} "" -${L_PARAM} + + gotname: + Push "$INSTDIR\${L_EXE}" + Call WaitUntilExeUnlocked + Push "${C_EXE_END_MARKER}" + Push "$INSTDIR\${L_EXE}" + Call CheckIfExeLocked + Pop ${L_RESULT} + StrCmp ${L_RESULT} "" exit manual_shutdown: *************** *** 533,549 **** #-------------------------------------------------------------------------- # ! # This function checks if a particular executable file (an EXE file) is being used. ! # If the specified EXE file is no longer in use, this function returns an empty string ! # (otherwise it returns the input parameter unchanged). # # Inputs: ! # (top of stack) - the full path of the EXE file to be checked # # Outputs: ! # (top of stack) - if file is no longer in use, an empty string ("") is returned ! # otherwise the input string is returned # # Usage: # # Push "$INSTDIR\wperl.exe" # Call CheckIfExeLocked --- 596,637 ---- #-------------------------------------------------------------------------- # ! # There are several different ways to run POPFile so this function accepts a list ! # of full pathnames to the executable files which are to be checked. The list is ! # passed via the stack with a marker string being used to mark the end of the list. ! # ! # The LockedList plugin returns the results on the stack, sandwiched between "/start" ! # and "/end" markers ("/start" appears at the top of the stack). If no files are locked, ! # the plugin simply returns both markers on the stack: ! # (top of stack) /start ! # (top of stack - 1) /end ! # ! # Note that if an executable was started using an SFN path then the plugin must also ! # be given the SFN path (if the plugin is supplied with the equivalent LFN path then ! # it will fail to detect if the executable is locked). As a further complication, if ! # a locked file is found the plugin returns the LFN format even if the input list of ! # executable files used the SFN format. ! # ! # Unfortunately the 'LockedList' plugin relies upon OS features only found in ! # Windows NT4 or later so older systems such as Win9x must be treated as special ! # cases. ! # ! # If none of the specified files is locked then an empty string is returned, ! # otherwise the function returns the first locked file it detects. # # Inputs: ! # (top of stack) - full path of EXE file to be checked ! # (top of stack - 1) - full path of EXE file to be checked ! # ... ! # (top of stack - n) - full path of EXE file to be checked ! # (top of stack - (n + 1)) - end-of-data marker (see C_EXE_END_MARKER definition) # # Outputs: ! # (top of stack) - if none of the files is in use, an empty string ("") ! # is returned, otherwise the path to the first locked ! # file found is returned # # Usage: # + # Push "/EndOfExeList" # Push "$INSTDIR\wperl.exe" # Call CheckIfExeLocked *************** *** 551,581 **** # # (if the file is no longer in use, $R0 will be "") - # (if the file is still being used, $R0 will be "$INSTDIR\wperl.exe") #-------------------------------------------------------------------------- Function CheckIfExeLocked - !define L_EXE $R9 ; full path to the EXE file which is to be monitored - !define L_FILE_HANDLE $R8 ! Exch ${L_EXE} ! Push ${L_FILE_HANDLE} ! IfFileExists "${L_EXE}" 0 unlocked_exit ! SetFileAttributes "${L_EXE}" NORMAL ! ClearErrors ! FileOpen ${L_FILE_HANDLE} "${L_EXE}" a ! FileClose ${L_FILE_HANDLE} ! IfErrors exit ! unlocked_exit: ! StrCpy ${L_EXE} "" ! exit: ! Pop ${L_FILE_HANDLE} ! Exch ${L_EXE} ! !undef L_EXE ! !undef L_FILE_HANDLE FunctionEnd --- 639,719 ---- # # (if the file is no longer in use, $R0 will be "") #-------------------------------------------------------------------------- Function CheckIfExeLocked ! Call AtLeastWinNT4 ! Pop $G_TEMP ! StrCmp $G_TEMP "0" specialcase ! ; The target system provides the features required by the LockedList plugin ! StrCpy $G_TEMP "emptylist" ! get_exe_path: ! Pop $G_EXETOCHECK ! StrCmp $G_EXETOCHECK "${C_EXE_END_MARKER}" start_search ! IfFileExists "$G_EXETOCHECK" 0 get_exe_path ! StrCpy $G_TEMP "gotlist" ! LockedList::AddModule /NOUNLOAD "$G_EXETOCHECK" ! Goto get_exe_path ! start_search: ! StrCmp $G_TEMP "emptylist" nothing_to_report ! LockedList::SilentSearch ! StrCpy $G_EXETOCHECK "" ! Pop $G_TEMP ! StrCmp $G_TEMP "/start" get_search_result ! MessageBox MB_OK|MB_ICONEXCLAMATION "Unexpected result from LockedList plugin\ ! ${MB_NL}${MB_NL}\ ! ($G_TEMP)" ! Abort ! ! get_search_result: ! Pop $G_TEMP ; get "process ID" (or "/end" marker, if no more data) ! StrCmp $G_TEMP "/end" end_of_locked_list ! StrCmp $G_EXETOCHECK "" 0 skip_result ! Pop $G_EXETOCHECK ; get the "path to executable" result ! Goto skip_window_caption ! ! skip_result: ! Pop $G_TEMP ; ignore the "path to executable" result ! ! skip_window_caption: ! Pop $G_TEMP ; ignore the "window caption" result ! goto get_search_result ! ! nothing_to_report: ! StrCpy $G_EXETOCHECK "" ! ! end_of_locked_list: ! Push $G_EXETOCHECK ! Goto exit ! ! ; Windows 95, 98, ME and NT3.x are treated as special cases ! ; (because they do not support the LockedList plugin) ! ! specialcase: ! StrCpy $G_TEMP "" ! ! loop: ! Pop $G_EXETOCHECK ! StrCmp $G_EXETOCHECK "${C_EXE_END_MARKER}" allread ! StrCmp $G_TEMP "" 0 loop ! IfFileExists "$G_EXETOCHECK" 0 loop ! SetFileAttributes "$G_EXETOCHECK" NORMAL ! ClearErrors ! FileOpen $G_FILE_HANDLE "$G_EXETOCHECK" a ! FileClose $G_FILE_HANDLE ! IfErrors 0 loop ! StrCpy $G_TEMP "$G_EXETOCHECK" ! Goto loop ! ! allread: ! StrCpy $G_EXETOCHECK $G_TEMP ! Push $G_EXETOCHECK ! ! exit: FunctionEnd *************** *** 590,593 **** --- 728,735 ---- # the specified EXE file is no longer in use. A timeout is used to avoid an infinite loop. # + # Note: If the CheckIfExeLocked function is run on NT4 or higher it will use the LockedList + # plugin which means the function's return value may not match any of the input data supplied + # to the function (e.g. if a SFN path is supplied the return value will use LFN format). + # # Inputs: # (top of stack) - the full path of the EXE file to be checked *************** *** 606,610 **** !define L_EXE $R9 ; full path to the EXE file which is to be monitored ! !define L_FILE_HANDLE $R8 !define L_TIMEOUT $R7 ; used to avoid an infinite loop --- 748,752 ---- !define L_EXE $R9 ; full path to the EXE file which is to be monitored ! !define L_RESULT $R8 !define L_TIMEOUT $R7 ; used to avoid an infinite loop *************** *** 624,640 **** Exch ${L_EXE} ! Push ${L_FILE_HANDLE} Push ${L_TIMEOUT} IfFileExists "${L_EXE}" 0 exit_now - SetFileAttributes "${L_EXE}" NORMAL StrCpy ${L_TIMEOUT} ${C_SHUTDOWN_LIMIT} check_if_unlocked: Sleep ${C_SHUTDOWN_DELAY} ! ClearErrors ! FileOpen ${L_FILE_HANDLE} "${L_EXE}" a ! FileClose ${L_FILE_HANDLE} ! IfErrors 0 exit_now IntOp ${L_TIMEOUT} ${L_TIMEOUT} - 1 IntCmp ${L_TIMEOUT} 0 exit_now exit_now check_if_unlocked --- 766,782 ---- Exch ${L_EXE} ! Push ${L_RESULT} Push ${L_TIMEOUT} IfFileExists "${L_EXE}" 0 exit_now StrCpy ${L_TIMEOUT} ${C_SHUTDOWN_LIMIT} check_if_unlocked: Sleep ${C_SHUTDOWN_DELAY} ! Push "${C_EXE_END_MARKER}" ! Push ${L_EXE} ! Call CheckIfExeLocked ! Pop ${L_RESULT} ! StrCmp ${L_RESULT} "" exit_now IntOp ${L_TIMEOUT} ${L_TIMEOUT} - 1 IntCmp ${L_TIMEOUT} 0 exit_now exit_now check_if_unlocked *************** *** 642,650 **** exit_now: Pop ${L_TIMEOUT} ! Pop ${L_FILE_HANDLE} Pop ${L_EXE} !undef L_EXE ! !undef L_FILE_HANDLE !undef L_TIMEOUT --- 784,792 ---- exit_now: Pop ${L_TIMEOUT} ! Pop ${L_RESULT} Pop ${L_EXE} !undef L_EXE ! !undef L_RESULT !undef L_TIMEOUT *************** *** 664,667 **** --- 806,810 ---- # will receive a page requesting the UI password instead of the "POPFile has shut down" page. # + # The layout and content of the HTML page depends upon the UI language and UI skin selection. # To avoid the need to parse the HTML page downloaded by NSISdl, we make a second attempt to # download the POPFile Shutdown page. If POPFile has shutdown then this second call will fail *************** *** 677,687 **** # (top of stack) - string containing one of the following result codes: # ! # "success" (meaning UI shutdown request appeared to work) # ! # "failure" (meaning UI shutdown request failed) # ! # "password?" (meaning failure: UI may be password protected) # ! # "badport" (meaning failure: invalid UI port supplied) # # Usage: --- 820,830 ---- # (top of stack) - string containing one of the following result codes: # ! # "success" (i.e. UI shutdown request appeared to work) # ! # "failure" (i.e. UI shutdown request failed) # ! # "password?" (i.e. failure - UI may be password protected) # ! # "badport" (i.e. failure - invalid UI port supplied) # # Usage: *************** *** 891,894 **** --- 1034,1038 ---- FunctionEnd + #-------------------------------------------------------------------------- # General Purpose Function: TrimNewlines *************** *** 933,936 **** --- 1077,1130 ---- FunctionEnd + + #-------------------------------------------------------------------------- + # General Purpose Function: AtLeastWinNT4 + #-------------------------------------------------------------------------- + # + # This function is used to detect if we are running on Windows NT4 or later + # + # Inputs: + # (none) + # + # Outputs: + # (top of stack) - 0 if Win9x or WinME, 1 if Win NT4 or higher + # + # Usage: + # + # Call AtLeastWinNT4 + # Pop $R0 + # + # ($R0 at this point is "0" if running on Win95, Win98, WinME or NT3.x) + # + #-------------------------------------------------------------------------- + + Function AtLeastWinNT4 + + !define L_RESULT $R9 + !define L_TEMP $R8 + + Push ${L_RESULT} + Push ${L_TEMP} + + ClearErrors + ReadRegStr ${L_RESULT} HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion + IfErrors preNT4system + StrCpy ${L_TEMP} ${L_RESULT} 1 + StrCmp ${L_TEMP} '3' preNT4system + StrCpy ${L_RESULT} "1" + Goto exit + + preNT4system: + StrCpy ${L_RESULT} "0" + + exit: + Pop ${L_TEMP} + Exch ${L_RESULT} + + !undef L_RESULT + !undef L_TEMP + + FunctionEnd + #-------------------------------------------------------------------------- # End of OnDemand.nsi |
From: naoki i. <am...@us...> - 2007-09-06 17:34:10
|
Update of /cvsroot/popfile/engine/UI In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6463/UI Modified Files: HTML.pm Log Message: Fixed a bug that 'session is not defined' error occurs Index: HTML.pm =================================================================== RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v retrieving revision 1.374 retrieving revision 1.375 diff -C2 -d -r1.374 -r1.375 *** HTML.pm 6 Sep 2007 17:05:42 -0000 1.374 --- HTML.pm 6 Sep 2007 17:34:10 -0000 1.375 *************** *** 2970,2973 **** --- 2970,2976 ---- } + # Store the language for the user. + my $language_for_user = $self->user_config_( $self->{sessions__}{$session}{user}, 'language'); + foreach my $row (@rows) { my %row_data; *************** *** 3001,3005 **** $col_data{History_Cell_Value} = $self->shorten__( $col_data{History_Cell_Title}, ! $length ); push ( @column_data, \%col_data ); next; --- 3004,3010 ---- $col_data{History_Cell_Value} = $self->shorten__( $col_data{History_Cell_Title}, ! $length, ! $language_for_user ! ); push ( @column_data, \%col_data ); next; *************** *** 3009,3013 **** $col_data{History_If_Subject_Column} = 1; ! if ( $self->user_config_( $self->{sessions__}{$session}{user}, 'language' ) eq 'Nihongo' ) { # Remove wrong characters as euc-jp. for my $i (1..4) { --- 3014,3018 ---- $col_data{History_If_Subject_Column} = 1; ! if ( $language_for_user eq 'Nihongo' ) { # Remove wrong characters as euc-jp. for my $i (1..4) { *************** *** 3018,3022 **** $col_data{History_Cell_Title} = $$row[4]; $col_data{History_Cell_Value} = ! $self->shorten__( $$row[4], $length ); $col_data{History_Mail_File} = $$row[0]; $col_data{History_Fields} = --- 3023,3027 ---- $col_data{History_Cell_Title} = $$row[4]; $col_data{History_Cell_Value} = ! $self->shorten__( $$row[4], $length, $language_for_user ); $col_data{History_Mail_File} = $$row[0]; $col_data{History_Fields} = *************** *** 3109,3117 **** sub shorten__ { ! my ( $self, $string, $length ) = @_; if ( length($string)>$length) { $string =~ /(.{$length})/; ! $1 =~ /((?:$euc_jp)*)/o if ( $self->user_config_( $self->{sessions__}{$session}{user}, 'language' ) eq 'Nihongo' ); $string = "$1..."; } --- 3114,3122 ---- sub shorten__ { ! my ( $self, $string, $length, $language ) = @_; if ( length($string)>$length) { $string =~ /(.{$length})/; ! $1 =~ /((?:$euc_jp)*)/o if ( $language eq 'Nihongo' ); $string = "$1..."; } |
From: naoki i. <am...@us...> - 2007-09-06 17:05:40
|
Update of /cvsroot/popfile/engine/UI In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27918/UI Modified Files: HTML.pm Log Message: Japanese users now choose the Japanese parser by changing 'bayes_nihongo_parser' option. Performance improvement for Japanese users. Decode the encoded attatchment file names. Index: HTML.pm =================================================================== RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v retrieving revision 1.373 retrieving revision 1.374 diff -C2 -d -r1.373 -r1.374 *** HTML.pm 17 Jan 2007 03:16:11 -0000 1.373 --- HTML.pm 6 Sep 2007 17:05:42 -0000 1.374 *************** *** 3011,3015 **** if ( $self->user_config_( $self->{sessions__}{$session}{user}, 'language' ) eq 'Nihongo' ) { # Remove wrong characters as euc-jp. ! $$row[4] =~ s/\G((?:$euc_jp)*)([\x80-\xFF](?=(?:$euc_jp)*))?/$1/og; } --- 3011,3017 ---- if ( $self->user_config_( $self->{sessions__}{$session}{user}, 'language' ) eq 'Nihongo' ) { # Remove wrong characters as euc-jp. ! for my $i (1..4) { ! $$row[$i] =~ s/\G((?:$euc_jp)*)([\x80-\xFF](?=(?:$euc_jp)*))?/$1/og; ! } } *************** *** 3110,3115 **** if ( length($string)>$length) { ! $string =~ /(.{$length})/; ! $string = "$1..."; } --- 3112,3118 ---- if ( length($string)>$length) { ! $string =~ /(.{$length})/; ! $1 =~ /((?:$euc_jp)*)/o if ( $self->user_config_( $self->{sessions__}{$session}{user}, 'language' ) eq 'Nihongo' ); ! $string = "$1..."; } |
From: naoki i. <am...@us...> - 2007-09-06 16:59:12
|
Update of /cvsroot/popfile/engine/Classifier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25614/Classifier Modified Files: MailParse.pm Log Message: Fixed a bug that some e-mail addresses were not treated as e-mail address. Index: MailParse.pm =================================================================== RCS file: /cvsroot/popfile/engine/Classifier/MailParse.pm,v retrieving revision 1.227 retrieving revision 1.228 diff -C2 -d -r1.227 -r1.228 *** MailParse.pm 12 Aug 2007 13:27:34 -0000 1.227 --- MailParse.pm 6 Sep 2007 16:59:12 -0000 1.228 *************** *** 621,625 **** # with <> and have an @ in them ! while ( $line =~ s/(mailto:)?([[:alpha:]0-9\-_\.]+?@([[:alpha:]0-9\-_\.]+\.[[:alpha:]0-9\-_]+))([\"\&\)\?\:\/ >\&\;])// ) { update_word($self, $2, $encoded, ($1?$1:''), '[\&\?\:\/ >\&\;]', $prefix); add_url($self, $3, $encoded, '\@', '[\&\?\:\/]', $prefix); --- 621,625 ---- # with <> and have an @ in them ! while ( $line =~ s/(mailto:)?([[:alpha:]0-9\-_\.]+?@([[:alpha:]0-9\-_\.]+\.[[:alpha:]0-9\-_]+))([\"\&\)\?\:\/ >\&\;]|$)// ) { update_word($self, $2, $encoded, ($1?$1:''), '[\&\?\:\/ >\&\;]', $prefix); add_url($self, $3, $encoded, '\@', '[\&\?\:\/]', $prefix); |
From: naoki i. <am...@us...> - 2007-09-06 16:59:11
|
Update of /cvsroot/popfile/engine/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25614/tests Modified Files: TestMailParse003.wrd TestMailParse009.wrd TestMailParse013.wrd TestMailParse014.wrd TestMailParse017.wrd TestMailParse018.wrd TestMailParse019.wrd TestMailParse020.wrd TestMailParse030.wrd TestMailParse031.wrd Log Message: Fixed a bug that some e-mail addresses were not treated as e-mail address. Index: TestMailParse009.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse009.wrd,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** TestMailParse009.wrd 24 Feb 2004 23:23:56 -0000 1.9 --- TestMailParse009.wrd 6 Sep 2007 16:59:12 -0000 1.10 *************** *** 26,34 **** trick:invisibleink 23 header:Date 1 ! subject:thrôugh 1 ! subject:unçõlleçted 1 ! subject:eárn 1 ! subject:fántástìç 1 ! subject:mõnéy 1 perry 1 header:Return-Path 1 --- 26,33 ---- trick:invisibleink 23 header:Date 1 ! subject:lle 1 ! subject:ted 1 ! subject:thr 1 ! subject:ugh 1 perry 1 header:Return-Path 1 Index: TestMailParse017.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse017.wrd,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** TestMailParse017.wrd 11 Aug 2004 14:31:12 -0000 1.6 --- TestMailParse017.wrd 6 Sep 2007 16:59:12 -0000 1.7 *************** *** 1,4 **** 200.155.65.82 1 ! site 2 mta04-srv.alltel.net 1 camgirltryouts.com 2 --- 1,4 ---- 200.155.65.82 1 ! site 1 mta04-srv.alltel.net 1 camgirltryouts.com 2 *************** *** 6,13 **** encoding:base64 1 utc 1 ! hot...@ya... 1 to:undisclosed 1 from:hot...@ya... 1 ! hottest 2 203.146.108.97 1 mx1.mail.yahoo.com 1 --- 6,13 ---- encoding:base64 1 utc 1 ! hot...@ya... 2 to:undisclosed 1 from:hot...@ya... 1 ! hottest 1 203.146.108.97 1 mx1.mail.yahoo.com 1 Index: TestMailParse003.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse003.wrd,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** TestMailParse003.wrd 24 Feb 2004 23:23:56 -0000 1.5 --- TestMailParse003.wrd 6 Sep 2007 16:59:12 -0000 1.6 *************** *** 36,40 **** pussy's 1 from:serafina 1 ! j23...@ea... 1 header:Date 1 header:X-OriginalArrivalTime 1 --- 36,40 ---- pussy's 1 from:serafina 1 ! j23...@ea... 2 header:Date 1 header:X-OriginalArrivalTime 1 Index: TestMailParse020.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse020.wrd,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** TestMailParse020.wrd 24 Feb 2004 23:23:56 -0000 1.6 --- TestMailParse020.wrd 6 Sep 2007 16:59:12 -0000 1.7 *************** *** 1,2 **** --- 1,3 ---- + 320...@t-... 1 mimeextension:mimetmp 2 mimename:00000000 2 *************** *** 16,20 **** end 2 run 2 ! gentoo 5 hvlt 1 linux 5 --- 17,21 ---- end 2 run 2 ! gentoo 2 hvlt 1 linux 5 *************** *** 75,79 **** must 2 unfortunately 1 ! gen...@ge... 1 subject:bug 1 install 1 --- 76,80 ---- must 2 unfortunately 1 ! gen...@ge... 4 subject:bug 1 install 1 *************** *** 118,122 **** now 1 problems 1 - announce 3 mit.edu 1 charset:us-ascii 1 --- 119,122 ---- Index: TestMailParse013.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse013.wrd,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** TestMailParse013.wrd 24 Feb 2004 23:23:56 -0000 1.5 --- TestMailParse013.wrd 6 Sep 2007 16:59:12 -0000 1.6 *************** *** 2,6 **** 216.91.57.210 1 tried 1 ! armlet 6 palm.lyris.net 1 until 1 --- 2,6 ---- 216.91.57.210 1 tried 1 ! armlet 4 palm.lyris.net 1 until 1 *************** *** 23,27 **** don't 1 can't 2 ! ar...@aj... 1 just 2 writable 1 --- 23,27 ---- don't 1 can't 2 ! ar...@aj... 2 just 2 writable 1 *************** *** 81,85 **** from:nnnnnnnnn.com 1 dev 1 ! forum 4 renaming 1 news.palmos.com 6 --- 81,85 ---- from:nnnnnnnnn.com 1 dev 1 ! forum 2 renaming 1 news.palmos.com 6 *************** *** 95,100 **** support 1 variable 2 ! bounce 2 ! rrr 2 callbacks 1 get 3 --- 95,99 ---- support 1 variable 2 ! rrr 1 callbacks 1 get 3 *************** *** 131,134 **** --- 130,135 ---- header:X-MDArchive-Copy 1 efa 1 + bou...@ne... 2 + rr...@po... 1 header:Date 1 header:To 1 *************** *** 148,152 **** header:X-MDaemon-Deliver-To 1 header:Subject 1 - archive 1 header:X-Message-Id 1 header:X-Return-Path 1 --- 149,152 ---- Index: TestMailParse018.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse018.wrd,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** TestMailParse018.wrd 11 Aug 2004 14:31:12 -0000 1.5 --- TestMailParse018.wrd 6 Sep 2007 16:59:12 -0000 1.6 *************** *** 13,17 **** header:Message-ID 1 rltvty.com 7 ! bug...@rl... 1 href 1 bfcc 1 --- 13,17 ---- header:Message-ID 1 rltvty.com 7 ! bug...@rl... 2 href 1 bfcc 1 *************** *** 26,30 **** override 2 severity 1 - run 1 business 1 microsoft 1 --- 26,29 ---- *************** *** 49,53 **** others 1 line 1 ! ru...@tp... 2 ccsid 1 equal 1 --- 48,52 ---- others 1 line 1 ! ru...@tp... 3 ccsid 1 equal 1 *************** *** 128,137 **** cobol 4 gss' 1 ! tpkm.ru 3 sources 1 charset:us-ascii 1 - bugtracker 1 category 1 ! tpkm 3 release 1 extraction 1 --- 127,135 ---- cobol 4 gss' 1 ! tpkm.ru 4 sources 1 charset:us-ascii 1 category 1 ! tpkm 2 release 1 extraction 1 *************** *** 160,164 **** to:.com 2 to:.ru 1 ! .ru 3 .com 10 from:.ru 1 --- 158,162 ---- to:.com 2 to:.ru 1 ! .ru 4 .com 10 from:.ru 1 Index: TestMailParse030.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse030.wrd,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** TestMailParse030.wrd 1 Mar 2004 10:50:28 -0000 1.1 --- TestMailParse030.wrd 6 Sep 2007 16:59:13 -0000 1.2 *************** *** 1,5 **** #ffffff 2 .com 27 ! .fi 2 10.10.20.81 2 10.10.20.87 1 --- 1,5 ---- #ffffff 2 .com 27 ! .fi 4 10.10.20.81 2 10.10.20.87 1 *************** *** 9,15 **** ad...@sh... 2 anti 1 - asdfsomebody 2 asd...@mb... 1 ! asd...@we... 1 buy 1 city 1 --- 9,14 ---- ad...@sh... 2 anti 1 asd...@mb... 1 ! asd...@we... 3 buy 1 city 1 *************** *** 72,77 **** kyyhky 3 laih.com 4 ! mbnet 10 ! mbnet.fi 2 microsoft 1 mx10.sheck-buy.com 6 --- 71,76 ---- kyyhky 3 laih.com 4 ! mbnet 8 ! mbnet.fi 4 microsoft 1 mx10.sheck-buy.com 6 *************** *** 107,112 **** utc 1 virus 1 ! webmail 3 ! webmail0.mbnet.fi 1 www.partner2profit.com 1 www.sheck-buy.com 2 --- 106,111 ---- utc 1 virus 1 ! webmail 1 ! webmail0.mbnet.fi 3 www.partner2profit.com 1 www.sheck-buy.com 2 Index: TestMailParse031.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse031.wrd,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** TestMailParse031.wrd 11 Aug 2004 14:31:12 -0000 1.4 --- TestMailParse031.wrd 6 Sep 2007 16:59:13 -0000 1.5 *************** *** 16,20 **** from:phr...@ho... 1 from:robert 1 ! gif 1 header:Content-ID 5 header:Content-Transfer-Encoding 6 --- 16,20 ---- from:phr...@ho... 1 from:robert 1 ! gif 5 header:Content-ID 5 header:Content-Transfer-Encoding 6 *************** *** 50,60 **** to:myrealbox.com 1 to:sir...@my... 1 ! æñè 1 ! çç' 1 ! çòl 1 ! çúî 1 ! éñz 1 ! êéiy 1 ! ëmóâ 1 ! óyäng 1 ! ôªõ 1 --- 50,62 ---- to:myrealbox.com 1 to:sir...@my... 1 ! exscz 1 ! gxhxx 1 ! hgl 1 ! kii 1 ! nji 1 ! nkm 1 ! pht 1 ! wfv 1 ! wzl 1 ! yii 1 ! yvp 1 \ No newline at end of file Index: TestMailParse019.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse019.wrd,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** TestMailParse019.wrd 11 Aug 2004 14:31:12 -0000 1.10 --- TestMailParse019.wrd 6 Sep 2007 16:59:12 -0000 1.11 *************** *** 1,3 **** ! bug...@rl... 1 href 1 resources 1 --- 1,3 ---- ! bug...@rl... 2 href 1 resources 1 *************** *** 7,11 **** which 1 analysis' 1 - rescuebre 1 cobol 2 program 5 --- 7,10 ---- *************** *** 71,75 **** postfix 3 confirmed 1 ! tpkm 5 to:el...@tp... 1 to:bug...@rl... 1 --- 70,74 ---- postfix 3 confirmed 1 ! tpkm 3 to:el...@tp... 1 to:bug...@rl... 1 *************** *** 90,94 **** resolution 1 rtfm 1 - bugtracker 1 project 1 same 1 --- 89,92 ---- *************** *** 97,101 **** charset:us-ascii 1 high 1 - run 1 blue 2 verify 1 --- 95,98 ---- *************** *** 139,140 **** --- 136,142 ---- from:.net 1 .net 1 + res...@tp... 1 + ru...@ma... 1 + mail.tpkm.ru 1 + tpkm.ru 2 + .ru 2 Index: TestMailParse014.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse014.wrd,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** TestMailParse014.wrd 11 Aug 2004 14:31:12 -0000 1.7 --- TestMailParse014.wrd 6 Sep 2007 16:59:12 -0000 1.8 *************** *** 57,61 **** problems 2 to:worldnet.att.net 1 ! noy 1 size 2 phone 1 --- 57,61 ---- problems 2 to:worldnet.att.net 1 ! 0n...@wo... 1 size 2 phone 1 |
From: naoki i. <am...@us...> - 2007-09-06 16:31:40
|
Update of /cvsroot/popfile/engine/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15410/tests Modified Files: Tag: b0_22_2 TestMailParse.tst TestNihongo002.wrd TestNihongo006.wrd TestNihongo008.wrd TestNihongo009.wrd TestNihongo010.wrd TestNihongo016.wrd TestNihongo017.wrd TestNihongo021.wrd Log Message: Japanese users now choose the Japanese parser by changing 'bayes_nihongo_parser' option. Performance improvement for Japanese users. Decode the encoded attatchment file names. Index: TestNihongo006.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo006.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo006.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo006.wrd 6 Sep 2007 16:31:41 -0000 1.1.2.2 *************** *** 1,4 **** --- 1,6 ---- 216.104.176.121 2 + advance 1 charset:iso-2022-jp 1 + current 1 encoding:base64 1 from:.ca 1 *************** *** 14,73 **** header:Subject 1 header:To 1 ! money 1 to:.com 1 to:example.com 1 to:te...@ex... 1 £±£± 1 £±£´ 1 £²£° 1 ! £µ£° 1 £Ï£Ë 1 ¤ª¤¹¤¹¤á¤Î 1 ¤«¤é 4 ¤¬¤Ê¤¤ 1 ¤Ç¤â 1 ¤Ê¤· 1 ¤Ê¤é 3 ¤Ë¤Ï¤´ 1 ¤Þ¤Ç 2 ¤ì¤Ê¤¤¤¬ 1 ¥¢¥ë¥Ð¥¤¥È 1 ! ¥¥ã¥ó¥Ú¡¼¥ó 1 ¥µ¥Ý¡¼¥È 1 ¥µ¥é¥ê¡¼¥Þ¥ó 1 ¥¹¥Ú¥·¥ã¥ë¥×¥é¥ó 1 ¥Ç¥ê¥Ð¥ê¡¼¥×¥é¥ó 1 ¥Ñ¡¼¥È 1 ¥×¥é¥ó 4 °Â¿´ 2 °Ê¾å 1 °ÊÆâ 1 ´°Á´ 1 ´Êñ 1 ¶¦ÄÌ 1 ¸½¶â 1 »î¤· 1 »þ´Ö 1 ¼«Âð 1 ¼Â»Ü 1 ¼çÉØ 1 ½Ð¤é 1 ! ½÷À 1 ½÷ÀÀìÍÑ 1 ! ¾Ü¤·¤¯ 1 ¿³ºº 1 ¿¶¤ê¹þ¤ß 1 ÁªÂò 1 Á´¹ñ 1 ! ¨Æü 3 ÂÎÀ© 1 ôÊÝ 1 ! ÆÃÊÌ 2 ÇÛã 1 ÈëÌ©¸·¼é 1 ɬÍ× 1 ÉÔÍ× 2 ÊÝ¾Ú¿Í 1 ! Ëü±ß 2 ÍèŹ 1 Ω¤Æ 1 --- 16,116 ---- header:Subject 1 header:To 1 ! money 2 ! system 1 to:.com 1 to:example.com 1 to:te...@ex... 1 + £°£° 2 £±£± 1 £±£´ 1 + £±£¸ 1 £²£° 1 ! £³£° 1 ! £µ£° 3 £Ï£Ë 1 ¤ª¤¹¤¹¤á¤Î 1 + ¤¤¤¿¤·¤Þ¤¹ 1 ¤«¤é 4 ¤¬¤Ê¤¤ 1 + ¤¯¤À¤µ¤¤ 1 + ¤¹¤Ù¤Æ 2 + ¤½¤Î 3 ¤Ç¤â 1 ¤Ê¤· 1 ¤Ê¤é 3 ¤Ë¤Ï¤´ 1 + ¤Î¤ß 1 + ¤Þ¤»¤ó¤« 1 ¤Þ¤Ç 2 + ¤Þ¤Ç¤Ë¤ª 1 + ¤ß¤Î 1 + ¤â¤ª 2 + ¤ë¤È 2 ¤ì¤Ê¤¤¤¬ 1 + ¥¢¥Ã¥× 2 + ¥¢¥É¥Ð¥ó¥¹ 1 ¥¢¥ë¥Ð¥¤¥È 1 ! ¥¥ã¥ó¥Ú¡¼¥ó 4 ¥µ¥Ý¡¼¥È 1 ¥µ¥é¥ê¡¼¥Þ¥ó 1 + ¥·¥¹¥Æ¥à 1 ¥¹¥Ú¥·¥ã¥ë¥×¥é¥ó 1 ¥Ç¥ê¥Ð¥ê¡¼¥×¥é¥ó 1 ¥Ñ¡¼¥È 1 + ¥Õ¥é¥ó¥Á¥ã¥¤¥º 1 ¥×¥é¥ó 4 °Â¿´ 2 °Ê¾å 1 °ÊÆâ 1 + ±Ä¶È»þ´Ö 1 + ´Ô¸µ 2 ´°Á´ 1 ´Êñ 1 + ¶È¼Ô 1 ¶¦ÄÌ 1 + ·î¼ý 1 ¸½¶â 1 + ¸Â¤ê 1 + ¸ÂÄê 1 + »°ÅÄ 1 »î¤· 1 + »þ¤Ë 2 »þ´Ö 1 ¼«Âð 1 ¼Â»Ü 1 ¼çÉØ 1 + ¼è¼¡ 1 + ¼ê¿ôÎÁ 2 ½Ð¤é 1 ! ½÷À 2 ½÷ÀÀìÍÑ 1 ! ¾Ü¤·¤¯ 3 ! ¾ì¹ç 2 ¿³ºº 1 ¿¶¤ê¹þ¤ß 1 + ¿½¹þ 1 + ÀéËü 1 ÁªÂò 1 Á´¹ñ 1 ! ¨Æü 5 ÂÎÀ© 1 + ÂåÍýŹ 1 ôÊÝ 1 ! Ä̾ï 2 ! ÅìµþÅÔÌܹõ¶è 1 ! Ʊ»þÊ罸 1 ! ÆÃÊÌ 4 ÇÛã 1 + Èæ¤Ù 2 ÈëÌ©¸·¼é 1 ɬÍ× 1 ÉÔÍ× 2 + Ééô 1 + Ê¿Æü 1 ÊÝ¾Ú¿Í 1 ! Ëè½µ¿åÍËÆü 1 ! Ëü±ß 4 ! ̵ÎÁ 1 ! Ìܻؤ· 1 ÍèŹ 1 Ω¤Æ 1 Index: TestNihongo009.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo009.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo009.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo009.wrd 6 Sep 2007 16:31:41 -0000 1.1.2.2 *************** *** 1,7 **** ! .jp 1 aaa 1 charset:iso-2022-jp 4 ! click 1 ! co.jp 1 from:.jp 1 from:co.jp 1 --- 1,6 ---- ! .jp 2 aaa 1 charset:iso-2022-jp 4 ! co.jp 2 from:.jp 1 from:co.jp 1 *************** *** 21,26 **** html:invalidtag 2 index 6 ! info 1 ! inf...@ya... 1 jst 1 shift_jis 1 --- 20,24 ---- html:invalidtag 2 index 6 ! inf...@ya... 2 jst 1 shift_jis 1 *************** *** 37,42 **** to:te...@ex... 1 url 1 ! yahoo 1 ! yahoo.co.jp 1 zeroro 6 £È£Ð 1 --- 35,39 ---- to:te...@ex... 1 url 1 ! yahoo.co.jp 2 zeroro 6 £È£Ð 1 Index: TestNihongo010.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo010.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo010.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo010.wrd 6 Sep 2007 16:31:41 -0000 1.1.2.2 *************** *** 1,11 **** ! .jp 2 beingmail 2 bestmail 2 ! bigtrail 1 ! big...@ya... 2 blat 1 cbe 1 charset:iso-2022-jp 2 ! co.jp 2 deleteform 2 dyndns 2 --- 1,10 ---- ! .jp 3 beingmail 2 bestmail 2 ! big...@ya... 3 blat 1 cbe 1 charset:iso-2022-jp 2 ! co.jp 3 deleteform 2 dyndns 2 *************** *** 39,44 **** ver 1 winnt's 1 ! yahoo 1 ! yahoo.co.jp 2 ¤¢¤ê¤Þ¤»¤ó 1 ¤¤¤¿¤·¤Þ¤¹ 1 --- 38,42 ---- ver 1 winnt's 1 ! yahoo.co.jp 3 ¤¢¤ê¤Þ¤»¤ó 1 ¤¤¤¿¤·¤Þ¤¹ 1 Index: TestNihongo002.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo002.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo002.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo002.wrd 6 Sep 2007 16:31:41 -0000 1.1.2.2 *************** *** 19,22 **** --- 19,24 ---- header:To 1 mime 1 + mimeextension:xls 2 + mimename:_¶¨Îϲñ¼ÒÍ×°÷¸Ä¿Í¥¹¥¥ë¾ðÊó_3907 1 multi 1 mydns.jp 1 Index: TestNihongo008.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo008.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo008.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo008.wrd 6 Sep 2007 16:31:41 -0000 1.1.2.2 *************** *** 1,3 **** ! .jp 2 charset:iso-2022-jp 1 encoding:7bit 1 --- 1,3 ---- ! .jp 3 charset:iso-2022-jp 1 encoding:7bit 1 *************** *** 23,36 **** header:X-UIDL 1 jst 1 ! ne.jp 2 ! subject:xfb 1 to:.jp 1 to:ne.jp 1 to:xxx.ne.jp 1 to:xx...@xx... 1 ! xxx 3 ! xxx.ne.jp 1 ! xxxx 1 ! xx...@xx... 1 xx...@ez... 1 xxxxxxxx 2 --- 23,34 ---- header:X-UIDL 1 jst 1 ! ne.jp 3 to:.jp 1 to:ne.jp 1 to:xxx.ne.jp 1 to:xx...@xx... 1 ! xxx 2 ! xxx.ne.jp 2 ! xx...@xx... 2 xx...@ez... 1 xxxxxxxx 2 Index: TestNihongo017.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo017.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo017.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo017.wrd 6 Sep 2007 16:31:41 -0000 1.1.2.2 *************** *** 5,15 **** #ff00ff 1 #ff9900 6 ! .jp 29 .org 2 ! 18kin.jp 29 av.18kin.jp 24 charset:iso-2022-jp 3 ! delmail 1 ! de...@18... 3 dvd 2 e-dm.org 2 --- 5,14 ---- #ff00ff 1 #ff9900 6 ! .jp 30 .org 2 ! 18kin.jp 30 av.18kin.jp 24 charset:iso-2022-jp 3 ! de...@18... 4 dvd 2 e-dm.org 2 *************** *** 19,23 **** from:18kin.jp 1 from:de...@18... 1 ! from:£±£¸¶Øjapan 1 header:Content-Transfer-Encoding 2 header:Content-Type 2 --- 18,23 ---- from:18kin.jp 1 from:de...@18... 1 ! from:£±£¸¶Ø 1 ! from:japan 1 header:Content-Transfer-Encoding 2 header:Content-Type 2 *************** *** 53,57 **** japan 2 jst 1 ! kin 2 news 4 subject:test 1 --- 53,57 ---- japan 2 jst 1 ! kin 1 news 4 subject:test 1 Index: TestNihongo021.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo021.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo021.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo021.wrd 6 Sep 2007 16:31:41 -0000 1.1.2.2 *************** *** 1,9 **** ! .jp 1 12.235.202.19 1 alias 1 charset:iso-2022-jp 3 ! co.jp 1 ! dareka 1 ! dokoka 2 dokokanohost 1 encoding:7bit 1 --- 1,10 ---- ! .jp 2 12.235.202.19 1 alias 1 charset:iso-2022-jp 3 ! co.jp 2 ! da...@do... 1 ! dokoka 1 ! dokoka.co.jp 1 dokokanohost 1 encoding:7bit 1 Index: TestMailParse.tst =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse.tst,v retrieving revision 1.43.4.3 retrieving revision 1.43.4.4 diff -C2 -d -r1.43.4.3 -r1.43.4.4 *** TestMailParse.tst 24 Feb 2006 10:33:33 -0000 1.43.4.3 --- TestMailParse.tst 6 Sep 2007 16:31:41 -0000 1.43.4.4 *************** *** 549,556 **** --- 549,558 ---- if ( $have_text_kakasi ) { $b->module_config_( 'html', 'language', 'Nihongo' ); + $b->config_( 'nihongo_parser', 'kakasi' ); $b->{parser__}->mangle( $w ); $b->initialize(); test_assert( $b->start() ); $cl->{lang__} = 'Nihongo'; + $cl->setup_nihongo_parser( 'kakasi' ); # Test decode_string *************** *** 573,577 **** # Test kakasi wakachi-gaki ! $cl->init_kakasi(); my $wakati_string = pack( "H*", "504f5046696c6520a4cf20bcabc6b020a5e1a1bca5eb20bfb6a4eacaaca4b120a5c4a1bca5eb20a4c7a4b9" ); --- 575,579 ---- # Test kakasi wakachi-gaki ! $cl->{nihongo_parser__}{init}(); my $wakati_string = pack( "H*", "504f5046696c6520a4cf20bcabc6b020a5e1a1bca5eb20bfb6a4eacaaca4b120a5c4a1bca5eb20a4c7a4b9" ); *************** *** 582,586 **** test_assert_equal( $cl->parse_line_with_kakasi($original_string), $wakati_string ); ! $cl->close_kakasi(); # parse test for Japanese e-mails. --- 584,588 ---- test_assert_equal( $cl->parse_line_with_kakasi($original_string), $wakati_string ); ! $cl->{nihongo_parser__}{close}(); # parse test for Japanese e-mails. Index: TestNihongo016.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo016.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo016.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo016.wrd 6 Sep 2007 16:31:41 -0000 1.1.2.2 *************** *** 5,15 **** #ff00ff 1 #ff9900 6 ! .jp 28 .org 1 ! 18kin.jp 28 av.18kin.jp 24 charset:iso-2022-jp 2 ! delmail 1 ! de...@18... 2 dvd 1 e-dm.org 1 --- 5,14 ---- #ff00ff 1 #ff9900 6 ! .jp 29 .org 1 ! 18kin.jp 29 av.18kin.jp 24 charset:iso-2022-jp 2 ! de...@18... 3 dvd 1 e-dm.org 1 *************** *** 18,22 **** from:18kin.jp 1 from:de...@18... 1 ! from:£±£¸¶Øjapan 1 header:Content-Transfer-Encoding 1 header:Content-type 1 --- 17,22 ---- from:18kin.jp 1 from:de...@18... 1 ! from:£±£¸¶Ø 1 ! from:japan 1 header:Content-Transfer-Encoding 1 header:Content-type 1 *************** *** 51,55 **** japan 1 jst 1 - kin 1 news 2 subject:test 1 --- 51,54 ---- |
From: naoki i. <am...@us...> - 2007-09-06 16:31:40
|
Update of /cvsroot/popfile/engine/Classifier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15410/Classifier Modified Files: Tag: b0_22_2 MailParse.pm Bayes.pm Log Message: Japanese users now choose the Japanese parser by changing 'bayes_nihongo_parser' option. Performance improvement for Japanese users. Decode the encoded attatchment file names. Index: Bayes.pm =================================================================== RCS file: /cvsroot/popfile/engine/Classifier/Bayes.pm,v retrieving revision 1.327.4.8 retrieving revision 1.327.4.9 diff -C2 -d -r1.327.4.8 -r1.327.4.9 *** Bayes.pm 31 Aug 2007 14:13:48 -0000 1.327.4.8 --- Bayes.pm 6 Sep 2007 16:31:41 -0000 1.327.4.9 *************** *** 274,277 **** --- 274,280 ---- $self->config_( 'sqlite_tweaks', 0xFFFFFFFF ); + # Japanese wakachigaki parser ('kakasi' or 'mecab' or 'internal'). + $self->config_( 'nihongo_parser', 'kakasi' ); + $self->mq_register_( 'COMIT', $self ); $self->mq_register_( 'RELSE', $self ); *************** *** 345,365 **** } ! # Since Text::Kakasi is not thread-safe, we use it under the ! # control of a Mutex to avoid a crash if we are running on ! # Windows and using the fork. ! if ( ( $self->{parser__}->{lang__} eq 'Nihongo' ) && ( $^O eq 'MSWin32' ) && ! ( ( ( $self->module_config_( 'pop3', 'enabled' ) ) && ! ( $self->module_config_( 'pop3', 'force_fork' ) ) ) || ! ( ( $self->module_config_( 'nntp', 'enabled' ) ) && ! ( $self->module_config_( 'nntp', 'force_fork' ) ) ) || ! ( ( $self->module_config_( 'smtp', 'enabled' ) ) && ! ( $self->module_config_( 'smtp', 'force_fork' ) ) ) ) ) { ! $self->{parser__}->{need_kakasi_mutex__} = 1; ! # Prepare the Mutex. ! require POPFile::Mutex; ! $self->{parser__}->{kakasi_mutex__} = new POPFile::Mutex( 'mailparse_kakasi' ); ! $self->log_( 2, "Create mutex for Kakasi." ); } --- 348,379 ---- } ! if ( $self->{parser__}->{lang__} eq 'Nihongo' ) { ! # Setup Nihongo (Japanese) parser. ! my $nihongo_parser = $self->config_( 'nihongo_parser' ); ! $nihongo_parser = $self->{parser__}->setup_nihongo_parser( $nihongo_parser ); ! ! $self->log_( 2, "Use Nihongo (Japanese) parser : $nihongo_parser" ); ! $self->config_( 'nihongo_parser', $nihongo_parser ); ! ! # Since Text::Kakasi is not thread-safe, we use it under the ! # control of a Mutex to avoid a crash if we are running on ! # Windows and using the fork. ! ! if ( ( $nihongo_parser eq 'kakasi' ) && ( $^O eq 'MSWin32' ) && ! ( ( ( $self->module_config_( 'pop3', 'enabled' ) ) && ! ( $self->module_config_( 'pop3', 'force_fork' ) ) ) || ! ( ( $self->module_config_( 'nntp', 'enabled' ) ) && ! ( $self->module_config_( 'nntp', 'force_fork' ) ) ) || ! ( ( $self->module_config_( 'smtp', 'enabled' ) ) && ! ( $self->module_config_( 'smtp', 'force_fork' ) ) ) ) ) { ! $self->{parser__}->{need_kakasi_mutex__} = 1; ! ! # Prepare the Mutex. ! require POPFile::Mutex; ! $self->{parser__}->{kakasi_mutex__} = new POPFile::Mutex( 'mailparse_kakasi' ); ! $self->log_( 2, "Create mutex for Kakasi." ); ! } } Index: MailParse.pm =================================================================== RCS file: /cvsroot/popfile/engine/Classifier/MailParse.pm,v retrieving revision 1.216.4.9 retrieving revision 1.216.4.10 diff -C2 -d -r1.216.4.9 -r1.216.4.10 *** MailParse.pm 6 Sep 2007 16:18:58 -0000 1.216.4.9 --- MailParse.pm 6 Sep 2007 16:31:41 -0000 1.216.4.10 *************** *** 44,48 **** my %encoding_candidates = ( ! 'Nihongo' => [ 'shiftjis', 'euc-jp', '7bit-jis' ] ); --- 44,48 ---- my %encoding_candidates = ( ! 'Nihongo' => [ 'cp932', 'euc-jp', '7bit-jis' ] ); *************** *** 65,68 **** --- 65,87 ---- my $non_symbol_euc_jp = "(?:$non_symbol_two_bytes_euc_jp|$three_bytes_euc_jp|$cho_on_symbol)"; + # Constants for the internal wakachigaki parser. + # Kind of EUC-JP chars + my $euc_jp_symbol = '[\xA1\xA2\xA6-\xA8\xAD\xF9-\xFC][\xA1-\xFE]'; # The symbols make a word of one character. + my $euc_jp_alphanum = '(?:\xA3[\xB0-\xB9\xC1-\xDA\xE1-\xFA])+'; # One or more alphabets and numbers + my $euc_jp_hiragana = '(?:(?:\xA4[\xA1-\xF3])+(?:\xA1[\xAB\xAC\xB5\xB6\xBC])*)+'; # One or more Hiragana characters + my $euc_jp_katakana = '(?:(?:\xA5[\xA1-\xF6])+(?:\xA1[\xA6\xBC\xB3\xB4])*)+'; # One or more Katakana characters + my $euc_jp_hkatakana = '(?:\x8E[\xA6-\xDF])+'; # One or more Half-width Katakana characters + my $euc_jp_kanji = '[\xB0-\xF4][\xA1-\xFE](?:[\xB0-\xF4][\xA1-\xFE]|\xA1\xB9)?'; # One or two Kanji characters + + my $euc_jp_word = '(' . + $euc_jp_alphanum . '|' . + $euc_jp_hiragana . '|' . + $euc_jp_katakana . '|' . + $euc_jp_hkatakana . '|' . + $euc_jp_kanji . '|' . + $euc_jp_symbol . '|' . + $ascii . '+|' . + $three_bytes_euc_jp . ')'; + # HTML entity mapping to character codes, this maps things like & to their corresponding # character code *************** *** 221,227 **** $self->{first20__} = ''; ! # For support Quoted Printable in Japanese text, save encoded text in multiple lines $self->{prev__} = ''; return $result; } --- 240,250 ---- $self->{first20__} = ''; ! # For support Quoted Printable in Japanese text, save encoded text in ! # multiple lines $self->{prev__} = ''; + # Object for the Nihongo (Japanese) parser. + $self->{nihongo_parser__} = undef; + return $result; } *************** *** 648,652 **** # the second char. ! while ( $line =~ s/^$euc_jp*?(([A-Za-z]|$non_symbol_euc_jp)([A-Za-z\']|$non_symbol_euc_jp){1,44})([_\-,\.\"\'\)\?!:;\/& \t\n\r]{0,5}|$)//ox ) { if ( ( $self->{in_headers__} == 0 ) && ( $self->{first20count__} < 20 ) ) { $self->{first20count__} += 1; --- 671,678 ---- # the second char. ! # In Japanese, one character words are common, so care about ! # words between 2 and 45 characters ! ! while ( $line =~ s/^$euc_jp*?([A-Za-z][A-Za-z\']{2,44}|$non_symbol_euc_jp{2,45})(?:[_\-,\.\"\'\)\?!:;\/& \t\n\r]{0,5}|$)//o ) { if ( ( $self->{in_headers__} == 0 ) && ( $self->{first20count__} < 20 ) ) { $self->{first20count__} += 1; *************** *** 654,665 **** } ! my $matched_word = $1; ! ! # In Japanese, 2 characters words are common, so care about ! # words between 2 and 45 characters ! ! if (((length $matched_word >= 3) && ($matched_word =~ /[A-Za-z]/)) || ((length $matched_word >= 2) && ($matched_word =~ /$non_symbol_euc_jp/))) { ! update_word($self, $matched_word, $encoded, '', '[_\-,\.\"\'\)\?!:;\/ &\t\n\r]'."|$symbol_euc_jp", $prefix); ! } } } else { --- 680,684 ---- } ! update_word($self, $1, $encoded, '', '[_\-,\.\"\'\)\?!:;\/ &\t\n\r]|'.$symbol_euc_jp, $prefix); } } else { *************** *** 1540,1548 **** $self->{charset__} = ''; - # Since Text::Kakasi is not thread-safe, we use it under the - # control of a Mutex to avoid a crash if we are running on - # Windows. - if ( $self->{lang__} eq 'Nihongo' ) { if ( $self->{need_kakasi_mutex__} ) { require POPFile::Mutex; --- 1559,1567 ---- $self->{charset__} = ''; if ( $self->{lang__} eq 'Nihongo' ) { + + # Since Text::Kakasi is not thread-safe, we use it under the + # control of a Mutex to avoid a crash if we are running on + # Windows. if ( $self->{need_kakasi_mutex__} ) { require POPFile::Mutex; *************** *** 1550,1555 **** } ! # Open Kakasi dictionary and initialize ! init_kakasi(); } } --- 1569,1574 ---- } ! # Initialize Nihongo (Japanese) parser ! $self->{nihongo_parser__}{init}( $self ); } } *************** *** 1590,1595 **** if ( $self->{lang__} eq 'Nihongo' ) { ! # Close Kakasi dictionary ! close_kakasi(); if ( $self->{need_kakasi_mutex__} ) { --- 1609,1614 ---- if ( $self->{lang__} eq 'Nihongo' ) { ! # Close Nihongo (Japanese) parser ! $self->{nihongo_parser__}{close}( $self ); if ( $self->{need_kakasi_mutex__} ) { *************** *** 1628,1634 **** if ( !$self->{in_headers__} && $self->{encoding__} =~ /quoted\-printable/i) { if ( $self->{lang__} eq 'Nihongo') { ! if ( $line =~ /=\r\n$/ ) { # Encoded in multiple lines - $line =~ s/=\r\n$//g; $self->{prev__} .= $line; next; --- 1647,1652 ---- if ( !$self->{in_headers__} && $self->{encoding__} =~ /quoted\-printable/i) { if ( $self->{lang__} eq 'Nihongo') { ! if ( $line =~ s/=\r\n$// ) { # Encoded in multiple lines $self->{prev__} .= $line; next; *************** *** 1642,1653 **** } ! if ( $self->{lang__} eq 'Nihongo' ) { # Decode \x?? ! if ( !$self->{in_headers__} ) { ! $line =~ s/\\x([8-9A-F][A-F0-9])/pack("C", hex($1))/eig; ! } $line = convert_encoding( $line, $self->{charset__}, 'euc-jp', '7bit-jis', @{$encoding_candidates{$self->{lang__}}} ); ! $line = parse_line_with_kakasi( $self, $line ); } --- 1660,1669 ---- } ! if ( $self->{lang__} eq 'Nihongo' && !$self->{in_headers__} && $self->{encoding__} !~ /base64/i ) { # Decode \x?? ! $line =~ s/\\x([8-9A-F][A-F0-9])/pack("C", hex($1))/eig; $line = convert_encoding( $line, $self->{charset__}, 'euc-jp', '7bit-jis', @{$encoding_candidates{$self->{lang__}}} ); ! $line = $self->{nihongo_parser__}{parse}( $self, $line ); } *************** *** 1814,1818 **** if ( $self->{lang__} eq 'Nihongo' ) { $decoded = convert_encoding( $decoded, $self->{charset__}, 'euc-jp', '7bit-jis', @{$encoding_candidates{$self->{lang__}}} ); ! $decoded = parse_line_with_kakasi( $self, $decoded ); } --- 1830,1834 ---- if ( $self->{lang__} eq 'Nihongo' ) { $decoded = convert_encoding( $decoded, $self->{charset__}, 'euc-jp', '7bit-jis', @{$encoding_candidates{$self->{lang__}}} ); ! $decoded = $self->{nihongo_parser__}{parse}( $self, $decoded ); } *************** *** 2033,2039 **** if ( $self->{subject__} eq '' ) { ! # In Japanese mode, parse subject with kakasi ! ! $argument = parse_line_with_kakasi( $self, $argument ) if ( $self->{lang__} eq 'Nihongo' && $argument ne '' ); $self->{subject__} = $argument; --- 2049,2054 ---- if ( $self->{subject__} eq '' ) { ! # In Japanese mode, parse subject with Nihongo (Japanese) parser ! $argument = $self->{nihongo_parser__}{parse}( $self, $argument ) if ( $self->{lang__} eq 'Nihongo' && $argument ne '' ); $self->{subject__} = $argument; *************** *** 2383,2386 **** --- 2398,2404 ---- print "Add filename $filename\n" if $self->{debug__}; + # Decode the filename + $filename = $self->decode_string( $filename ); + my ( $name, $ext ) = $self->file_extension( $filename ); *************** *** 2492,2496 **** if(ref $enc){ ! $from= $enc->name; } else { --- 2510,2514 ---- if(ref $enc){ ! $from= $enc->name; } else { *************** *** 2510,2514 **** # Workaround for Encode::Unicode error bug. eval { ! Encode::from_to($string, $from, $to); }; $string = $orig_string if ($@); --- 2528,2536 ---- # Workaround for Encode::Unicode error bug. eval { ! if (ref $enc) { ! $string = Encode::encode($to, $enc->decode($string)); ! } else { ! Encode::from_to($string, $from, $to); ! } }; $string = $orig_string if ($@); *************** *** 2537,2543 **** return $line if ( $line =~ /^[\x00-\x7F]*$/ ); - # This is used to parse Japanese - require Text::Kakasi; - # Split Japanese line into words using Kakasi Wakachigaki mode $line = Text::Kakasi::do_kakasi($line); --- 2559,2562 ---- *************** *** 2548,2551 **** --- 2567,2622 ---- # ---------------------------------------------------------------------------- # + # parse_line_with_mecab + # + # Parse a line with MeCab + # + # Split Japanese words by spaces using "MeCab" - Yet Another Part-of-Speech + # and Morphological Analyzer. + # + # $line The line to be parsed + # + # ---------------------------------------------------------------------------- + sub parse_line_with_mecab + { + my ( $self, $line ) = @_; + + # If the line does not contain Japanese characters, do nothing + return $line if ( $line =~ /^[\x00-\x7F]*$/ ); + + # Split Japanese line into words using MeCab + $line = $self->{nihongo_parser__}{obj_mecab}->parse($line); + + # Remove the unnecessary white spaces + $line =~ s/([\x00-\x1f\x21-\x7f]) (?=[\x00-\x1f\x21-\x7f])/$1/g; + + return $line; + } + + # ---------------------------------------------------------------------------- + # + # parse_line_with_internal_parser + # + # Parse a line with an internal perser + # + # Split characters by kind of the character + # + # $line The line to be parsed + # + # ---------------------------------------------------------------------------- + sub parse_line_with_internal_parser + { + my ( $self, $line ) = @_; + + # If the line does not contain Japanese characters, do nothing + return $line if ( $line =~ /^[\x00-\x7F]*$/ ); + + # Split Japanese line into words by the kind of characters + $line =~ s/\G$euc_jp_word/$1 /og; + + return $line; + } + + # ---------------------------------------------------------------------------- + # # init_kakasi # *************** *** 2555,2565 **** sub init_kakasi { - require Text::Kakasi; - # Initialize Kakasi with Wakachigaki mode(-w is passed to # Kakasi as argument). Both input and ouput encoding are # EUC-JP. ! Text::Kakasi::getopt_argv("kakasi", "-w", "-ieuc", "-oeuc"); } --- 2626,2652 ---- sub init_kakasi { # Initialize Kakasi with Wakachigaki mode(-w is passed to # Kakasi as argument). Both input and ouput encoding are # EUC-JP. ! Text::Kakasi::getopt_argv('kakasi', '-w', '-ieuc', '-oeuc'); ! } ! ! # ---------------------------------------------------------------------------- ! # ! # init_mecab ! # ! # Create a new parser object of MeCab. ! # ! # ---------------------------------------------------------------------------- ! sub init_mecab ! { ! my ( $self ) = @_; ! ! # Initialize MeCab (-F %M\s -U %M\s -E \n is passed to MeCab as argument). ! # Insert white spaces after words. ! ! $self->{nihongo_parser__}{obj_mecab} ! = MeCab::Tagger->new('-F %M\s -U %M\s -E \n'); } *************** *** 2573,2581 **** sub close_kakasi { - require Text::Kakasi; - Text::Kakasi::close_kanwadict(); } 1; --- 2660,2753 ---- sub close_kakasi { Text::Kakasi::close_kanwadict(); } + # ---------------------------------------------------------------------------- + # + # close_mecab + # + # Free the parser object of MeCab. + # + # ---------------------------------------------------------------------------- + sub close_mecab + { + my ( $self ) = @_; + + $self->{nihongo_parser__}{obj_mecab} = undef; + } + + # ---------------------------------------------------------------------------- + # + # setup_nihongo_parser + # + # Check whether Nihongo (Japanese) parsers are available and setup subroutines. + # + # $nihongo_parser Nihongo (Japanese) parser to use + # ( kakasi / mecab / internal ) + # + # ---------------------------------------------------------------------------- + sub setup_nihongo_parser + { + my ( $self, $nihongo_parser ) = @_; + + # If MeCab is installed, use MeCab. + if ( $nihongo_parser eq 'mecab' ) { + my $has_mecab = 0; + + foreach my $prefix (@INC) { + my $realfilename = "$prefix/MeCab.pm"; + if (-f $realfilename) { + $has_mecab = 1; + last; + } + } + + # If MeCab is not installed, try to use Text::Kakasi. + $nihongo_parser = 'kakasi' unless ( $has_mecab ); + } + + # If Text::Kakasi is installed, use Text::Kakasi. + if ( $nihongo_parser eq 'kakasi' ) { + my $has_kakasi = 0; + + foreach my $prefix (@INC) { + my $realfilename = "$prefix/Text/Kakasi.pm"; + if (-f $realfilename) { + $has_kakasi = 1; + last; + } + } + + # If Kakasi is not installed, use the internal parser. + $nihongo_parser = 'internal' unless ( $has_kakasi ); + } + + # Setup perser's subroutines + if ( $nihongo_parser eq 'mecab' ) { + # Import MeCab module + require MeCab; + import MeCab; + + $self->{nihongo_parser__}{init} = \&init_mecab; + $self->{nihongo_parser__}{parse} = \&parse_line_with_mecab; + $self->{nihongo_parser__}{close} = \&close_mecab; + } elsif ( $nihongo_parser eq 'kakasi' ) { + # Import Text::Kakasi module + require Text::Kakasi; + import Text::Kakasi; + + $self->{nihongo_parser__}{init} = \&init_kakasi; + $self->{nihongo_parser__}{parse} = \&parse_line_with_kakasi; + $self->{nihongo_parser__}{close} = \&close_kakasi; + } else { + # Require no external modules + $self->{nihongo_parser__}{init} = sub {}; # Needs no initialization + $self->{nihongo_parser__}{parse} = \&parse_line_with_internal_parser; + $self->{nihongo_parser__}{close} = sub {}; + } + + return $nihongo_parser; + } + 1; |
Update of /cvsroot/popfile/engine/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15022/tests Modified Files: Tag: b0_22_2 TestMailParse018.wrd TestMailParse019.wrd TestMailParse020.wrd TestMailParse030.wrd TestMailParse019.clr Log Message: Test suite fix for e-mail address bug. Index: TestMailParse020.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse020.wrd,v retrieving revision 1.6 retrieving revision 1.6.8.1 diff -C2 -d -r1.6 -r1.6.8.1 *** TestMailParse020.wrd 24 Feb 2004 23:23:56 -0000 1.6 --- TestMailParse020.wrd 6 Sep 2007 16:30:27 -0000 1.6.8.1 *************** *** 1,2 **** --- 1,3 ---- + 320...@t-... 1 mimeextension:mimetmp 2 mimename:00000000 2 *************** *** 16,20 **** end 2 run 2 ! gentoo 5 hvlt 1 linux 5 --- 17,21 ---- end 2 run 2 ! gentoo 2 hvlt 1 linux 5 *************** *** 75,79 **** must 2 unfortunately 1 ! gen...@ge... 1 subject:bug 1 install 1 --- 76,80 ---- must 2 unfortunately 1 ! gen...@ge... 4 subject:bug 1 install 1 *************** *** 118,122 **** now 1 problems 1 - announce 3 mit.edu 1 charset:us-ascii 1 --- 119,122 ---- Index: TestMailParse019.clr =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse019.clr,v retrieving revision 1.9.8.1 retrieving revision 1.9.8.2 diff -C2 -d -r1.9.8.1 -r1.9.8.2 *** TestMailParse019.clr 21 Feb 2006 13:55:55 -0000 1.9.8.1 --- TestMailParse019.clr 6 Sep 2007 16:30:27 -0000 1.9.8.2 *************** *** 1 **** ! <tt><b><font color="black">Return-Path</font></b>: <<b><font color="black">bugs@drnn<b><font color="black">.net</font></b></font></b>><br /><b><font color="black">Delivered-To</font></b>: run@mail.<b><font color="black">tpkm</font></b>.ru<br /><b><font color="black">Received</font></b>: by mail.<b><font color="black">tpkm</font></b>.ru (<b><font color="black">Postfix</font></b>)<br /> id 70071971F2; Wed, 29 Jan 2003 20:30:49 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Delivered-To</font></b>: rescuebre@<b><font color="black">tpkm</font></b>.ru<br /><b><font color="black">Received</font></b>: from localhost (localhost [<b><font color="blue">127.0.0.1</font></b>])<br /> by mail.<b><font color="black">tpkm</font></b>.ru (<b><font color="black">Postfix</font></b>) with SMTP<br /> id 6474D971FA; Wed, 29 Jan 2003 20:30:49 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Received</font></b>: from <b><font color="black">keymaster.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b> (<b><font color="black">keymaster.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b> [<b><font color="black">12.146.171.10</font></b>])<br /> by mail.<b><font color="black">tpkm</font></b>.ru (<b><font color="black">Postfix</font></b>) with ESMTP<br /> id 93510971F2; Wed, 29 Jan 2003 20:30:47 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Received</font></b>: from <b><font color="black">rtfm</font></b> (<b><font color="black">rtfm.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b> [<b><font color="black">63.100.138.144</font></b>]) by <b><font color="black">keymaster.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b> with SMTP (<b><font color="red">Microsoft</font></b> <b><font color="red">Exchange</font></b> <b><font color="blue">Internet</font></b> Mail <b><font color="red">Service</font></b> <b><font color="blue">Version</font></b> 5.5.2653.13)<br /> id D4Z7<b><font color="black">ASMC</font></b>; Wed, 29 Jan 2003 12:28:21 -0500<br /><b><font color="black">To</font></b>: <b><font color="black">elia@<b><font color="black">tpkm<b><font color="black">.ru</font></b></font></b></font></b>, <b><font color="black">rescuebre@<b><font color="black">tpkm<b><font color="black">.ru</font></b></font></b></font></b>, <b><font color="black">kcruz@<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b>, <b><font color="black">bugtracker@<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b><br /><b><font color="black">Date</font></b>: Wed, 29 Jan 03 12:28:29<br /><b><font color="black">From</font></b>: <<b><font color="black">bugs@<b><font color="black">drnn<b><font color="black">.net</font></b></font></b></font></b>><br /><b><font color="black">Subject</font></b>: VI ID: 24149 Status: <b><font color="black">Dev</font></b> <b><font color="black">Confirmed</font></b> <b><font color="black">Fix</font></b> <b><font color="black">Sev</font></b>: 1<br /><b><font color="black">MIME-Version</font></b>: 1.0<br /><b><font color="black">Content-Type</font></b>: multipart/mixed; boundary="isboundary"<br /><b><font color="black">Message-Id</font></b>: <200...@ma...><br /><b><font color="black">X-Text-Classification</font></b>: lists<br /><b><font color="black">X-POPFile-Link</font></b>: <http://<b><font color="blue">127.0.0.1</font></b>:8080/<b><font color="black">jump</font></b>_to_message?view=popfile523=1.<b><font color="black">msg</font></b>><br /><br /><br /><br />--isboundary<br /><b><font color="black">Content-Type</font></b>: text/html; charset=<b><font color="red">us-ascii</font></b><br /><br /><HTML><HEAD><br /><BODY><br /><DIV><B><FONT size=4><b><font color="black">Visual</font></b> <b><font color="black">Intercept</font></b> <b><font color="black">Notification</font></b>:</FONT></B></DIV><BR><br /><TABLE border rules=groups><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="black">Incident</font></b>:</B></TD><br /> <TD><br /> <A href="http://<b><font color="black">rtfm.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b>/VIWeb/default.asp?type=incident&name=24149">24149</A><br /> (<A href="http://<b><font color="black">vi.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b>/VIWeb/default.asp?type=incident&name=24149"><b><font color="blue">Alternative</font></b> <b><font color="blue">server</font></b></A>)<br /> </TD><br /> <TD WIDTH="20%"><TD><TD><TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B>Subject:</B></TD><br /> <TD COLSPAN=5><b><font color="black">Internal</font></b> <b><font color="blue">error</font></b> in <b><font color="black">BRE</font></b>.<b><font color="blue">dll</font></b></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="blue">Project</font></b>:</B></TD><br /> <TD COLSPAN=5>/<b><font color="red">Program</font></b>/RW/<b><font color="black">Cobol</font></b>/<b><font color="black">BRE</font></b>/<b><font color="blue">Structure</font></b> <b><font color="red">Based</font></b></TD></TR><br /> <TR><br /> <TD><B><b><font color="blue">Version</font></b>:</B></TD><br /> <TD COLSPAN=5>7.1.00</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Release</font></b>:</B></TD><br /> <TD COLSPAN=5></TD></TR><br /> <TR><br /> <TD><B><b><font color="blue">Build</font></b>:</B></TD><br /> <TD COLSPAN=5></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="red">Customer</font></b>:</B></TD><br /> <TD COLSPAN=5><b><font color="black">INTERNAL</font></b></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B>Status:</B></TD><br /> <TD><b><font color="blue">Dev</font></b> <b><font color="blue">Confirmed</font></b> <b><font color="black">Fix</font></b></TD><TD><br /> <TD><B><b><font color="black">AssignID</font></b>:</B></TD><br /> <TD><b><font color="black">snd</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Priority</font></b>:</B></TD><br /> <TD><b><font color="blue">High</font></b></TD><TD><br /> <TD><B><b><font color="black">RequestID</font></b>:</B></TD><br /> <TD><b><font color="black">elia</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Severity</font></b>:</B></TD><br /> <TD>1</TD><TD><br /> <TD><B><b><font color="black">QAID</font></b>:</B></TD><br /> <TD><b><font color="black">elia</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Category</font></b>:</B></TD><br /> <TD><b><font color="black">BRE</font></b></TD><TD><br /> <TD><B><b><font color="black">ChangeID</font></b>:</B></TD><br /> <TD><b><font color="black">snd</font></b></TD><br /> <TD>1/29/2003 12:26:59 PM</TD></TR><br /> <TBODY><br /> <TR><br /> <TD vAlign=top><B><b><font color="blue">Description</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60>FROM:<b><font color="black">elia</font></b> DATE:01/29/2003 10:16:01 <br /><br /> The "<b><font color="black">Internal</font></b> <b><font color="blue">error</font></b> in <b><font color="black">BRE</font></b>.<b><font color="blue">dll</font></b>" message is <b><font color="black">generated</font></b> <b><font color="red">when</font></b> <b><font color="blue">structure</font></b> <b><font color="red">based</font></b> <b><font color="black">slice</font></b><br /> is <b><font color="black">extracted</font></b> from <b><font color="red">program</font></b> <b><font color="blue">which</font></b> has been <b><font color="black">verified</font></b> with "<b><font color="red">Perform</font></b> <b><font color="red">Program</font></b> <b><font color="red">analysis</font></b> = no"<br /> and at the <b><font color="red">same</font></b> <b><font color="red">time</font></b> <b><font color="black">BRE</font></b> <b><font color="blue">option</font></b> "<b><font color="red">Ensure</font></b> <b><font color="black">consistent</font></b> <b><font color="red">access</font></b> to <b><font color="black">external</font></b> <b><font color="blue">resources</font></b> = yes".<br /><br /> The <b><font color="black">correct</font></b> <b><font color="blue">error</font></b> message <b><font color="red">should</font></b> be <b><font color="black">generated</font></b>.<br /><br /> "<b><font color="blue">Severe</font></b> Re-<b><font color="black">verify</font></b> the <b><font color="red">program</font></b> with '<b><font color="red">Perform</font></b> <b><font color="red">program</font></b> <b><font color="black">analysis'</font></b> <b><font color="blue">option</font></b> <b><font color="red">set</font></b>".<br /><br /><br /> <b><font color="black">Test</font></b>:MEDIUM\\RescueWin\archives\VS-cobol\Computation\<b><font color="black">Logical</font></b>-path\<b><font color="red">CALL</font></b>-accept4.<b><font color="black">CBL</font></b> <br /><br /> *|<b><font color="red">Start</font></b> <b><font color="blue">paragraph</font></b>: p1<br /> *|<b><font color="blue">Last</font></b> <b><font color="blue">paragraph</font></b>: p1<br /><br /> 1015 <b><font color="red">blue</font></b>.<br /><br />FROM:<b><font color="black">snd</font></b> DATE:<b><font color="red">Wednesday</font></b>, <b><font color="red">January</font></b> 29, 2003 11:52:45 AM <br /><br /><b><font color="red">Fixed</font></b> in <b><font color="red">Blue</font></b>. No <b><font color="black">warning</font></b> in this <b><font color="red">case</font></b>, <b><font color="black">BRE</font></b> <b><font color="black">runs</font></b> <b><font color="black">DFA</font></b> <b><font color="black">instead</font></b>.<br /></TEXTAREA></TD></TR><br /> <TR><br /> <TD vAlign=top><B><b><font color="black">Resolution</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60></TEXTAREA></TD></TR><br /> <TR><br /> <TD vAlign=top><B><b><font color="black">WorkAround</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60></TEXTAREA></TD></TR></TBODY></TABLE><br /><HR><br />If you have received this <b><font color="red">email</font></b> in <b><font color="blue">error</font></b>, <b><font color="red">please</font></b> <b><font color="black">respond</font></b> to: <A <br />href="mailto:BugTracker@<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b>">BugTracker@<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></A> <br /><HR><br /></BODY></HTML><br /><br />--isboundary--<br /><br /><br /></tt> \ No newline at end of file --- 1 ---- ! <tt><b><font color="black">Return-Path</font></b>: <<b><font color="black">bugs@drnn<b><font color="black">.net</font></b></font></b>><br /><b><font color="black">Delivered-To</font></b>: ru...@ma...<br /><b><font color="black">Received</font></b>: by mail.<b><font color="black">tpkm</font></b>.ru (<b><font color="black">Postfix</font></b>)<br /> id 70071971F2; Wed, 29 Jan 2003 20:30:49 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Delivered-To</font></b>: res...@tp...<br /><b><font color="black">Received</font></b>: from localhost (localhost [<b><font color="blue">127.0.0.1</font></b>])<br /> by mail.<b><font color="black">tpkm</font></b>.ru (<b><font color="black">Postfix</font></b>) with SMTP<br /> id 6474D971FA; Wed, 29 Jan 2003 20:30:49 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Received</font></b>: from <b><font color="black">keymaster.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b> (<b><font color="black">keymaster.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b> [<b><font color="black">12.146.171.10</font></b>])<br /> by mail.<b><font color="black">tpkm</font></b>.ru (<b><font color="black">Postfix</font></b>) with ESMTP<br /> id 93510971F2; Wed, 29 Jan 2003 20:30:47 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Received</font></b>: from <b><font color="black">rtfm</font></b> (<b><font color="black">rtfm.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b> [<b><font color="black">63.100.138.144</font></b>]) by <b><font color="black">keymaster.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b> with SMTP (<b><font color="red">Microsoft</font></b> <b><font color="red">Exchange</font></b> <b><font color="blue">Internet</font></b> Mail <b><font color="red">Service</font></b> <b><font color="blue">Version</font></b> 5.5.2653.13)<br /> id D4Z7<b><font color="black">ASMC</font></b>; Wed, 29 Jan 2003 12:28:21 -0500<br /><b><font color="black">To</font></b>: <b><font color="black">elia@<b><font color="black">tpkm<b><font color="black">.ru</font></b></font></b></font></b>, <b><font color="black">rescuebre@<b><font color="black">tpkm<b><font color="black">.ru</font></b></font></b></font></b>, <b><font color="black">kcruz@<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b>, <b><font color="black">bugtracker@<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b><br /><b><font color="black">Date</font></b>: Wed, 29 Jan 03 12:28:29<br /><b><font color="black">From</font></b>: <<b><font color="black">bugs@<b><font color="black">drnn<b><font color="black">.net</font></b></font></b></font></b>><br /><b><font color="black">Subject</font></b>: VI ID: 24149 Status: <b><font color="black">Dev</font></b> <b><font color="black">Confirmed</font></b> <b><font color="black">Fix</font></b> <b><font color="black">Sev</font></b>: 1<br /><b><font color="black">MIME-Version</font></b>: 1.0<br /><b><font color="black">Content-Type</font></b>: multipart/mixed; boundary="isboundary"<br /><b><font color="black">Message-Id</font></b>: <200...@ma...><br /><b><font color="black">X-Text-Classification</font></b>: lists<br /><b><font color="black">X-POPFile-Link</font></b>: <http://<b><font color="blue">127.0.0.1</font></b>:8080/<b><font color="black">jump</font></b>_to_message?view=popfile523=1.<b><font color="black">msg</font></b>><br /><br /><br /><br />--isboundary<br /><b><font color="black">Content-Type</font></b>: text/html; charset=<b><font color="red">us-ascii</font></b><br /><br /><HTML><HEAD><br /><BODY><br /><DIV><B><FONT size=4><b><font color="black">Visual</font></b> <b><font color="black">Intercept</font></b> <b><font color="black">Notification</font></b>:</FONT></B></DIV><BR><br /><TABLE border rules=groups><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="black">Incident</font></b>:</B></TD><br /> <TD><br /> <A href="http://<b><font color="black">rtfm.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b>/VIWeb/default.asp?type=incident&name=24149">24149</A><br /> (<A href="http://<b><font color="black">vi.<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></font></b>/VIWeb/default.asp?type=incident&name=24149"><b><font color="blue">Alternative</font></b> <b><font color="blue">server</font></b></A>)<br /> </TD><br /> <TD WIDTH="20%"><TD><TD><TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B>Subject:</B></TD><br /> <TD COLSPAN=5><b><font color="black">Internal</font></b> <b><font color="blue">error</font></b> in <b><font color="black">BRE</font></b>.<b><font color="blue">dll</font></b></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="blue">Project</font></b>:</B></TD><br /> <TD COLSPAN=5>/<b><font color="red">Program</font></b>/RW/<b><font color="black">Cobol</font></b>/<b><font color="black">BRE</font></b>/<b><font color="blue">Structure</font></b> <b><font color="red">Based</font></b></TD></TR><br /> <TR><br /> <TD><B><b><font color="blue">Version</font></b>:</B></TD><br /> <TD COLSPAN=5>7.1.00</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Release</font></b>:</B></TD><br /> <TD COLSPAN=5></TD></TR><br /> <TR><br /> <TD><B><b><font color="blue">Build</font></b>:</B></TD><br /> <TD COLSPAN=5></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="red">Customer</font></b>:</B></TD><br /> <TD COLSPAN=5><b><font color="black">INTERNAL</font></b></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B>Status:</B></TD><br /> <TD><b><font color="blue">Dev</font></b> <b><font color="blue">Confirmed</font></b> <b><font color="black">Fix</font></b></TD><TD><br /> <TD><B><b><font color="black">AssignID</font></b>:</B></TD><br /> <TD><b><font color="black">snd</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Priority</font></b>:</B></TD><br /> <TD><b><font color="blue">High</font></b></TD><TD><br /> <TD><B><b><font color="black">RequestID</font></b>:</B></TD><br /> <TD><b><font color="black">elia</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Severity</font></b>:</B></TD><br /> <TD>1</TD><TD><br /> <TD><B><b><font color="black">QAID</font></b>:</B></TD><br /> <TD><b><font color="black">elia</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Category</font></b>:</B></TD><br /> <TD><b><font color="black">BRE</font></b></TD><TD><br /> <TD><B><b><font color="black">ChangeID</font></b>:</B></TD><br /> <TD><b><font color="black">snd</font></b></TD><br /> <TD>1/29/2003 12:26:59 PM</TD></TR><br /> <TBODY><br /> <TR><br /> <TD vAlign=top><B><b><font color="blue">Description</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60>FROM:<b><font color="black">elia</font></b> DATE:01/29/2003 10:16:01 <br /><br /> The "<b><font color="black">Internal</font></b> <b><font color="blue">error</font></b> in <b><font color="black">BRE</font></b>.<b><font color="blue">dll</font></b>" message is <b><font color="black">generated</font></b> <b><font color="red">when</font></b> <b><font color="blue">structure</font></b> <b><font color="red">based</font></b> <b><font color="black">slice</font></b><br /> is <b><font color="black">extracted</font></b> from <b><font color="red">program</font></b> <b><font color="blue">which</font></b> has been <b><font color="black">verified</font></b> with "<b><font color="red">Perform</font></b> <b><font color="red">Program</font></b> <b><font color="red">analysis</font></b> = no"<br /> and at the <b><font color="red">same</font></b> <b><font color="red">time</font></b> <b><font color="black">BRE</font></b> <b><font color="blue">option</font></b> "<b><font color="red">Ensure</font></b> <b><font color="black">consistent</font></b> <b><font color="red">access</font></b> to <b><font color="black">external</font></b> <b><font color="blue">resources</font></b> = yes".<br /><br /> The <b><font color="black">correct</font></b> <b><font color="blue">error</font></b> message <b><font color="red">should</font></b> be <b><font color="black">generated</font></b>.<br /><br /> "<b><font color="blue">Severe</font></b> Re-<b><font color="black">verify</font></b> the <b><font color="red">program</font></b> with '<b><font color="red">Perform</font></b> <b><font color="red">program</font></b> <b><font color="black">analysis'</font></b> <b><font color="blue">option</font></b> <b><font color="red">set</font></b>".<br /><br /><br /> <b><font color="black">Test</font></b>:MEDIUM\\RescueWin\archives\VS-cobol\Computation\<b><font color="black">Logical</font></b>-path\<b><font color="red">CALL</font></b>-accept4.<b><font color="black">CBL</font></b> <br /><br /> *|<b><font color="red">Start</font></b> <b><font color="blue">paragraph</font></b>: p1<br /> *|<b><font color="blue">Last</font></b> <b><font color="blue">paragraph</font></b>: p1<br /><br /> 1015 <b><font color="red">blue</font></b>.<br /><br />FROM:<b><font color="black">snd</font></b> DATE:<b><font color="red">Wednesday</font></b>, <b><font color="red">January</font></b> 29, 2003 11:52:45 AM <br /><br /><b><font color="red">Fixed</font></b> in <b><font color="red">Blue</font></b>. No <b><font color="black">warning</font></b> in this <b><font color="red">case</font></b>, <b><font color="black">BRE</font></b> <b><font color="black">runs</font></b> <b><font color="black">DFA</font></b> <b><font color="black">instead</font></b>.<br /></TEXTAREA></TD></TR><br /> <TR><br /> <TD vAlign=top><B><b><font color="black">Resolution</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60></TEXTAREA></TD></TR><br /> <TR><br /> <TD vAlign=top><B><b><font color="black">WorkAround</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60></TEXTAREA></TD></TR></TBODY></TABLE><br /><HR><br />If you have received this <b><font color="red">email</font></b> in <b><font color="blue">error</font></b>, <b><font color="red">please</font></b> <b><font color="black">respond</font></b> to: <A <br />href="mailto:Bug...@rl...">BugTracker@<b><font color="black">rltvty<b><font color="black">.com</font></b></font></b></A> <br /><HR><br /></BODY></HTML><br /><br />--isboundary--<br /><br /><br /></tt> \ No newline at end of file Index: TestMailParse018.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse018.wrd,v retrieving revision 1.5 retrieving revision 1.5.6.1 diff -C2 -d -r1.5 -r1.5.6.1 *** TestMailParse018.wrd 11 Aug 2004 14:31:12 -0000 1.5 --- TestMailParse018.wrd 6 Sep 2007 16:30:27 -0000 1.5.6.1 *************** *** 13,17 **** header:Message-ID 1 rltvty.com 7 ! bug...@rl... 1 href 1 bfcc 1 --- 13,17 ---- header:Message-ID 1 rltvty.com 7 ! bug...@rl... 2 href 1 bfcc 1 *************** *** 26,30 **** override 2 severity 1 - run 1 business 1 microsoft 1 --- 26,29 ---- *************** *** 49,53 **** others 1 line 1 ! ru...@tp... 2 ccsid 1 equal 1 --- 48,52 ---- others 1 line 1 ! ru...@tp... 3 ccsid 1 equal 1 *************** *** 128,137 **** cobol 4 gss' 1 ! tpkm.ru 3 sources 1 charset:us-ascii 1 - bugtracker 1 category 1 ! tpkm 3 release 1 extraction 1 --- 127,135 ---- cobol 4 gss' 1 ! tpkm.ru 4 sources 1 charset:us-ascii 1 category 1 ! tpkm 2 release 1 extraction 1 *************** *** 160,164 **** to:.com 2 to:.ru 1 ! .ru 3 .com 10 from:.ru 1 --- 158,162 ---- to:.com 2 to:.ru 1 ! .ru 4 .com 10 from:.ru 1 Index: TestMailParse030.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse030.wrd,v retrieving revision 1.1 retrieving revision 1.1.8.1 diff -C2 -d -r1.1 -r1.1.8.1 *** TestMailParse030.wrd 1 Mar 2004 10:50:28 -0000 1.1 --- TestMailParse030.wrd 6 Sep 2007 16:30:27 -0000 1.1.8.1 *************** *** 1,5 **** #ffffff 2 .com 27 ! .fi 2 10.10.20.81 2 10.10.20.87 1 --- 1,5 ---- #ffffff 2 .com 27 ! .fi 4 10.10.20.81 2 10.10.20.87 1 *************** *** 9,15 **** ad...@sh... 2 anti 1 - asdfsomebody 2 asd...@mb... 1 ! asd...@we... 1 buy 1 city 1 --- 9,14 ---- ad...@sh... 2 anti 1 asd...@mb... 1 ! asd...@we... 3 buy 1 city 1 *************** *** 72,77 **** kyyhky 3 laih.com 4 ! mbnet 10 ! mbnet.fi 2 microsoft 1 mx10.sheck-buy.com 6 --- 71,76 ---- kyyhky 3 laih.com 4 ! mbnet 8 ! mbnet.fi 4 microsoft 1 mx10.sheck-buy.com 6 *************** *** 107,112 **** utc 1 virus 1 ! webmail 3 ! webmail0.mbnet.fi 1 www.partner2profit.com 1 www.sheck-buy.com 2 --- 106,111 ---- utc 1 virus 1 ! webmail 1 ! webmail0.mbnet.fi 3 www.partner2profit.com 1 www.sheck-buy.com 2 Index: TestMailParse019.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse019.wrd,v retrieving revision 1.10 retrieving revision 1.10.6.1 diff -C2 -d -r1.10 -r1.10.6.1 *** TestMailParse019.wrd 11 Aug 2004 14:31:12 -0000 1.10 --- TestMailParse019.wrd 6 Sep 2007 16:30:27 -0000 1.10.6.1 *************** *** 1,3 **** ! bug...@rl... 1 href 1 resources 1 --- 1,3 ---- ! bug...@rl... 2 href 1 resources 1 *************** *** 7,11 **** which 1 analysis' 1 - rescuebre 1 cobol 2 program 5 --- 7,10 ---- *************** *** 71,75 **** postfix 3 confirmed 1 ! tpkm 5 to:el...@tp... 1 to:bug...@rl... 1 --- 70,74 ---- postfix 3 confirmed 1 ! tpkm 3 to:el...@tp... 1 to:bug...@rl... 1 *************** *** 90,94 **** resolution 1 rtfm 1 - bugtracker 1 project 1 same 1 --- 89,92 ---- *************** *** 97,101 **** charset:us-ascii 1 high 1 - run 1 blue 2 verify 1 --- 95,98 ---- *************** *** 139,140 **** --- 136,142 ---- from:.net 1 .net 1 + res...@tp... 1 + ru...@ma... 1 + mail.tpkm.ru 1 + tpkm.ru 2 + .ru 2 |
From: naoki i. <am...@us...> - 2007-09-06 16:26:10
|
Update of /cvsroot/popfile/engine/UI In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13541/UI Modified Files: Tag: b0_22_2 HTML.pm Log Message: Japanese users now choose the Japanese parser by changing 'bayes_nihongo_parser' option. Performance improvement for Japanese users. Decode the encoded attatchment file names. Index: HTML.pm =================================================================== RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v retrieving revision 1.311.4.10 retrieving revision 1.311.4.11 diff -C2 -d -r1.311.4.10 -r1.311.4.11 *** HTML.pm 10 Feb 2007 22:56:18 -0000 1.311.4.10 --- HTML.pm 6 Sep 2007 16:26:08 -0000 1.311.4.11 *************** *** 1148,1152 **** if ( $self->config_( 'language' ) =~ /^Nihongo$/ ) { no locale; ! $word =~ /^($euc_jp)/; $c = $1; } else { --- 1148,1152 ---- if ( $self->config_( 'language' ) =~ /^Nihongo$/ ) { no locale; ! $word =~ /^($euc_jp)/o; $c = $1; } else { *************** *** 2465,2469 **** if ( $self->config_( 'language' ) eq 'Nihongo' ) { # Remove wrong characters as euc-jp. ! $$row[4] =~ s/\G((?:$euc_jp)*)([\x80-\xFF](?=(?:$euc_jp)*))?/$1/og; } --- 2465,2471 ---- if ( $self->config_( 'language' ) eq 'Nihongo' ) { # Remove wrong characters as euc-jp. ! for my $i (1..4) { ! $$row[$i] =~ s/\G((?:$euc_jp)*)([\x80-\xFF](?=(?:$euc_jp)*))?/$1/og; ! } } *************** *** 2537,2542 **** if ( length($string)>$length) { ! $string =~ /(.{$length})/; ! $string = "$1..."; } --- 2539,2545 ---- if ( length($string)>$length) { ! $string =~ /(.{$length})/; ! $1 =~ /((?:$euc_jp)*)/o if ( $self->config_( 'language' ) eq 'Nihongo' ); ! $string = "$1..."; } |
From: naoki i. <am...@us...> - 2007-09-06 16:19:17
|
Update of /cvsroot/popfile/engine/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10521/tests Modified Files: Tag: b0_22_2 TestMailParse003.wrd TestMailParse013.wrd TestMailParse014.wrd TestMailParse017.wrd Log Message: Fixed a bug that some e-mail addresses were not treated as e-mail address. Index: TestMailParse017.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse017.wrd,v retrieving revision 1.6 retrieving revision 1.6.6.1 diff -C2 -d -r1.6 -r1.6.6.1 *** TestMailParse017.wrd 11 Aug 2004 14:31:12 -0000 1.6 --- TestMailParse017.wrd 6 Sep 2007 16:18:59 -0000 1.6.6.1 *************** *** 1,4 **** 200.155.65.82 1 ! site 2 mta04-srv.alltel.net 1 camgirltryouts.com 2 --- 1,4 ---- 200.155.65.82 1 ! site 1 mta04-srv.alltel.net 1 camgirltryouts.com 2 *************** *** 6,13 **** encoding:base64 1 utc 1 ! hot...@ya... 1 to:undisclosed 1 from:hot...@ya... 1 ! hottest 2 203.146.108.97 1 mx1.mail.yahoo.com 1 --- 6,13 ---- encoding:base64 1 utc 1 ! hot...@ya... 2 to:undisclosed 1 from:hot...@ya... 1 ! hottest 1 203.146.108.97 1 mx1.mail.yahoo.com 1 Index: TestMailParse014.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse014.wrd,v retrieving revision 1.7 retrieving revision 1.7.6.1 diff -C2 -d -r1.7 -r1.7.6.1 *** TestMailParse014.wrd 11 Aug 2004 14:31:12 -0000 1.7 --- TestMailParse014.wrd 6 Sep 2007 16:18:59 -0000 1.7.6.1 *************** *** 57,61 **** problems 2 to:worldnet.att.net 1 ! noy 1 size 2 phone 1 --- 57,61 ---- problems 2 to:worldnet.att.net 1 ! 0n...@wo... 1 size 2 phone 1 Index: TestMailParse003.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse003.wrd,v retrieving revision 1.5 retrieving revision 1.5.8.1 diff -C2 -d -r1.5 -r1.5.8.1 *** TestMailParse003.wrd 24 Feb 2004 23:23:56 -0000 1.5 --- TestMailParse003.wrd 6 Sep 2007 16:18:59 -0000 1.5.8.1 *************** *** 36,40 **** pussy's 1 from:serafina 1 ! j23...@ea... 1 header:Date 1 header:X-OriginalArrivalTime 1 --- 36,40 ---- pussy's 1 from:serafina 1 ! j23...@ea... 2 header:Date 1 header:X-OriginalArrivalTime 1 Index: TestMailParse013.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/TestMailParse013.wrd,v retrieving revision 1.5 retrieving revision 1.5.8.1 diff -C2 -d -r1.5 -r1.5.8.1 *** TestMailParse013.wrd 24 Feb 2004 23:23:56 -0000 1.5 --- TestMailParse013.wrd 6 Sep 2007 16:18:59 -0000 1.5.8.1 *************** *** 2,6 **** 216.91.57.210 1 tried 1 ! armlet 6 palm.lyris.net 1 until 1 --- 2,6 ---- 216.91.57.210 1 tried 1 ! armlet 4 palm.lyris.net 1 until 1 *************** *** 23,27 **** don't 1 can't 2 ! ar...@aj... 1 just 2 writable 1 --- 23,27 ---- don't 1 can't 2 ! ar...@aj... 2 just 2 writable 1 *************** *** 81,85 **** from:nnnnnnnnn.com 1 dev 1 ! forum 4 renaming 1 news.palmos.com 6 --- 81,85 ---- from:nnnnnnnnn.com 1 dev 1 ! forum 2 renaming 1 news.palmos.com 6 *************** *** 95,100 **** support 1 variable 2 ! bounce 2 ! rrr 2 callbacks 1 get 3 --- 95,99 ---- support 1 variable 2 ! rrr 1 callbacks 1 get 3 *************** *** 131,134 **** --- 130,135 ---- header:X-MDArchive-Copy 1 efa 1 + bou...@ne... 2 + rr...@po... 1 header:Date 1 header:To 1 *************** *** 148,152 **** header:X-MDaemon-Deliver-To 1 header:Subject 1 - archive 1 header:X-Message-Id 1 header:X-Return-Path 1 --- 149,152 ---- |
From: naoki i. <am...@us...> - 2007-09-06 16:19:03
|
Update of /cvsroot/popfile/engine/Classifier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10521/Classifier Modified Files: Tag: b0_22_2 MailParse.pm Log Message: Fixed a bug that some e-mail addresses were not treated as e-mail address. Index: MailParse.pm =================================================================== RCS file: /cvsroot/popfile/engine/Classifier/MailParse.pm,v retrieving revision 1.216.4.8 retrieving revision 1.216.4.9 diff -C2 -d -r1.216.4.8 -r1.216.4.9 *** MailParse.pm 12 Aug 2007 13:24:33 -0000 1.216.4.8 --- MailParse.pm 6 Sep 2007 16:18:58 -0000 1.216.4.9 *************** *** 604,608 **** # Pull out any email addresses in the line that are marked with <> and have an @ in them ! while ( $line =~ s/(mailto:)?([[:alpha:]0-9\-_\.]+?@([[:alpha:]0-9\-_\.]+\.[[:alpha:]0-9\-_]+))([\"\&\)\?\:\/ >\&\;])// ) { update_word($self, $2, $encoded, ($1?$1:''), '[\&\?\:\/ >\&\;]', $prefix); add_url($self, $3, $encoded, '\@', '[\&\?\:\/]', $prefix); --- 604,608 ---- # Pull out any email addresses in the line that are marked with <> and have an @ in them ! while ( $line =~ s/(mailto:)?([[:alpha:]0-9\-_\.]+?@([[:alpha:]0-9\-_\.]+\.[[:alpha:]0-9\-_]+))([\"\&\)\?\:\/ >\&\;]|$)// ) { update_word($self, $2, $encoded, ($1?$1:''), '[\&\?\:\/ >\&\;]', $prefix); add_url($self, $3, $encoded, '\@', '[\&\?\:\/]', $prefix); |
From: Manni H. <man...@us...> - 2007-09-03 14:13:45
|
Update of /cvsroot/popfile/engine/POPFile In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7996 Modified Files: Configuration.pm Log Message: Slight change for our options-parsing regex: make it non-greedy so you can pass in values that contain an equals sign (e.g. the dbconnect string). Index: Configuration.pm =================================================================== RCS file: /cvsroot/popfile/engine/POPFile/Configuration.pm,v retrieving revision 1.60 retrieving revision 1.61 diff -C2 -d -r1.60 -r1.61 *** Configuration.pm 2 Dec 2006 17:45:02 -0000 1.60 --- Configuration.pm 3 Sep 2007 12:42:59 -0000 1.61 *************** *** 387,391 **** for my $i (0..$#set_options) { ! $set_options[$i] =~ /-?(.+)=(.+)/; if ( !defined( $1 ) ) { --- 387,391 ---- for my $i (0..$#set_options) { ! $set_options[$i] =~ /-?(.+?)=(.+)/; if ( !defined( $1 ) ) { *************** *** 734,736 **** 1; - --- 734,735 ---- |
From: Manni H. <man...@us...> - 2007-08-31 14:15:29
|
Update of /cvsroot/popfile/engine/Classifier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12298/Classifier Modified Files: Bayes.pm Log Message: Fix bug that prevented magnets containing quote characters from being deleted. Index: Bayes.pm =================================================================== RCS file: /cvsroot/popfile/engine/Classifier/Bayes.pm,v retrieving revision 1.351 retrieving revision 1.352 diff -C2 -d -r1.351 -r1.352 *** Bayes.pm 27 Feb 2006 12:24:49 -0000 1.351 --- Bayes.pm 31 Aug 2007 14:15:28 -0000 1.352 *************** *** 4249,4257 **** my $mtid = $result->[0]; $self->db_()->do( "delete from magnets where magnets.bucketid = $bucketid and magnets.mtid = $mtid and ! magnets.val = '$text';" ); } --- 4249,4258 ---- my $mtid = $result->[0]; + $text = $self->db_()->quote( $text ); $self->db_()->do( "delete from magnets where magnets.bucketid = $bucketid and magnets.mtid = $mtid and ! magnets.val = $text;" ); } |
From: Manni H. <man...@us...> - 2007-08-31 14:13:46
|
Update of /cvsroot/popfile/engine/Classifier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11563/Classifier Modified Files: Tag: b0_22_2 Bayes.pm Log Message: Fix bug that prevented magnets containing quote characters from being deleted. Index: Bayes.pm =================================================================== RCS file: /cvsroot/popfile/engine/Classifier/Bayes.pm,v retrieving revision 1.327.4.7 retrieving revision 1.327.4.8 diff -C2 -d -r1.327.4.7 -r1.327.4.8 *** Bayes.pm 22 Jan 2007 12:29:32 -0000 1.327.4.7 --- Bayes.pm 31 Aug 2007 14:13:48 -0000 1.327.4.8 *************** *** 3843,3851 **** my $mtid = $result->[0]; $self->{db__}->do( "delete from magnets where magnets.bucketid = $bucketid and magnets.mtid = $mtid and ! magnets.val = '$text';" ); } --- 3843,3852 ---- my $mtid = $result->[0]; + $text = $self->{db__}->quote( $text ); $self->{db__}->do( "delete from magnets where magnets.bucketid = $bucketid and magnets.mtid = $mtid and ! magnets.val = $text;" ); } |
From: Manni H. <man...@us...> - 2007-08-31 12:52:57
|
Update of /cvsroot/popfile/engine/Services In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16408/Services Modified Files: Tag: b0_22_2 IMAP.pm Log Message: If we loose the connection to the server, we just die. This is fine as long as what we were doing was a result of a call to service(). However, we have to make sure that stuff that happens outside of service also gets eval'd. Index: IMAP.pm =================================================================== RCS file: /cvsroot/popfile/engine/Services/IMAP.pm,v retrieving revision 1.9.4.3 retrieving revision 1.9.4.4 diff -C2 -d -r1.9.4.3 -r1.9.4.4 *** IMAP.pm 6 Nov 2006 15:05:53 -0000 1.9.4.3 --- IMAP.pm 31 Aug 2007 12:52:52 -0000 1.9.4.4 *************** *** 2234,2240 **** if ( defined $imap ) { if ( $self->login( $imap ) ) {; ! $self->get_mailbox_list( $imap ); ! $self->logout( $imap ); ! $templ->param( IMAP_update_list_failed => '' ); } else { --- 2234,2247 ---- if ( defined $imap ) { if ( $self->login( $imap ) ) {; ! eval { ! $self->get_mailbox_list( $imap ); ! }; ! if ( $@ ) { ! $templ->param( IMAP_update_list_failed => 'Lost the connection to the server while trying to update the list of mailboxes. Please try again and/or check your connection settings.' ); ! } ! else { ! $self->logout( $imap ); ! $templ->param( IMAP_update_list_failed => '' ); ! } } else { |
From: naoki i. <am...@us...> - 2007-08-12 13:27:33
|
Update of /cvsroot/popfile/engine/Classifier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30485/Classifier Modified Files: MailParse.pm Log Message: performance improvement for handling spaced_out trick Index: MailParse.pm =================================================================== RCS file: /cvsroot/popfile/engine/Classifier/MailParse.pm,v retrieving revision 1.226 retrieving revision 1.227 diff -C2 -d -r1.226 -r1.227 *** MailParse.pm 2 Dec 2006 17:45:02 -0000 1.226 --- MailParse.pm 12 Aug 2007 13:27:34 -0000 1.227 *************** *** 640,653 **** # Deal with runs of alternating spaces and letters ! foreach my $space (' ', '\'', '*', '^', '`', ' ', '\38', '.' ){ ! while ( $line =~ s/( |^)(([A-Z]\Q$space\E){2,15}[A-Z])( |\Q$space\E|[!\?,])/ /i ) { ! my $original = "$1$2$4"; ! my $word = $2; ! print "$word ->" if $self->{debug__}; ! $word =~ s/[^A-Z]//gi; ! print "$word\n" if $self->{debug__}; ! $self->update_word( $word, $encoded, ' ', ' ', $prefix); ! $self->update_pseudoword( 'trick', 'spacedout', $encoded, $original ); ! } } --- 640,651 ---- # Deal with runs of alternating spaces and letters ! while ( $line =~ s/( |^)([A-Za-z]([\'\*^`&\. ]| )(?:[A-Za-z]\3){1,14}[A-Za-z])( |\3|[!\?,]|$)/ / ) { ! my $original = "$1$2$4"; ! my $word = $2; ! print "$word ->" if $self->{debug__}; ! $word =~ s/[^A-Z]//gi; ! print "$word\n" if $self->{debug__}; ! $self->update_word( $word, $encoded, ' ', ' ', $prefix); ! $self->update_pseudoword( 'trick', 'spacedout', $encoded, $original ); } |
From: naoki i. <am...@us...> - 2007-08-12 13:26:02
|
Update of /cvsroot/popfile/engine/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29808/tests Modified Files: Tag: b0_22_2 TestNihongo003.wrd TestNihongo011.wrd Log Message: fix the Nihongo tests to pass all the MailParse tests. And small fix in Nihongo.msg Index: TestNihongo003.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo003.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo003.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo003.wrd 12 Aug 2007 13:26:02 -0000 1.1.2.2 *************** *** 28,31 **** --- 28,33 ---- unicode 1 www.cyber-ad01.com 2 + µ×¤· 1 + ¤Ö¤ê¤Ç¤¹¤Í 1 ¤·¤Ê¤¯¤Æ¤´¤á¤ó¤Ê¤µ¤¤ 1 ¤º¤Ã¤È 1 Index: TestNihongo011.wrd =================================================================== RCS file: /cvsroot/popfile/engine/tests/Attic/TestNihongo011.wrd,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** TestNihongo011.wrd 21 Feb 2006 13:55:55 -0000 1.1.2.1 --- TestNihongo011.wrd 12 Aug 2007 13:26:02 -0000 1.1.2.2 *************** *** 37,40 **** --- 37,42 ---- www.cyber-ad01.com 2 y7.net 1 + µ×¤· 1 + ¤Ö¤ê¤Ç¤¹¤Í 1 ¤«¤é 1 ¤«¤é¤Ç¤â¤¤¤¤¤Î¤Ç 1 |
From: naoki i. <am...@us...> - 2007-08-12 13:26:01
|
Update of /cvsroot/popfile/engine/languages In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29808/languages Modified Files: Tag: b0_22_2 Nihongo.msg Log Message: fix the Nihongo tests to pass all the MailParse tests. And small fix in Nihongo.msg Index: Nihongo.msg =================================================================== RCS file: /cvsroot/popfile/engine/languages/Nihongo.msg,v retrieving revision 1.11.6.9 retrieving revision 1.11.6.10 diff -C2 -d -r1.11.6.9 -r1.11.6.10 *** Nihongo.msg 9 Feb 2007 14:26:07 -0000 1.11.6.9 --- Nihongo.msg 12 Aug 2007 13:26:02 -0000 1.11.6.10 *************** *** 71,75 **** Update ¹¹¿· Refresh ºÇ¿·¤Î¾õÂ֤˹¹¿· ! FAQ FAQ ½é¿´¼Ô¡¦½é³Ø¼Ô¸þ¤±¤ÎQ&A½¸ ID ID Date Æü»þ --- 71,75 ---- Update ¹¹¿· Refresh ºÇ¿·¤Î¾õÂ֤˹¹¿· ! FAQ FAQ ½é¿´¼Ô¡¦½é³Ø¼Ô¸þ¤±¤ÎQ&A½¸ ID ID Date Æü»þ |
From: naoki i. <am...@us...> - 2007-08-12 13:24:36
|
Update of /cvsroot/popfile/engine/Classifier In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29384/Classifier Modified Files: Tag: b0_22_2 MailParse.pm Log Message: performance improvement for handling spaced_out trick Index: MailParse.pm =================================================================== RCS file: /cvsroot/popfile/engine/Classifier/MailParse.pm,v retrieving revision 1.216.4.7 retrieving revision 1.216.4.8 diff -C2 -d -r1.216.4.7 -r1.216.4.8 *** MailParse.pm 23 Oct 2006 14:05:19 -0000 1.216.4.7 --- MailParse.pm 12 Aug 2007 13:24:33 -0000 1.216.4.8 *************** *** 622,635 **** # Deal with runs of alternating spaces and letters ! foreach my $space (' ', '\'', '*', '^', '`', ' ', '\38', '.' ){ ! while ( $line =~ s/( |^)(([A-Z]\Q$space\E){2,15}[A-Z])( |\Q$space\E|[!\?,])/ /i ) { ! my $original = "$1$2$4"; ! my $word = $2; ! print "$word ->" if $self->{debug__}; ! $word =~ s/[^A-Z]//gi; ! print "$word\n" if $self->{debug__}; ! $self->update_word( $word, $encoded, ' ', ' ', $prefix); ! $self->update_pseudoword( 'trick', 'spacedout', $encoded, $original ); ! } } --- 622,633 ---- # Deal with runs of alternating spaces and letters ! while ( $line =~ s/( |^)([A-Za-z]([\'\*^`&\. ]| )(?:[A-Za-z]\3){1,14}[A-Za-z])( |\3|[!\?,]|$)/ / ) { ! my $original = "$1$2$4"; ! my $word = $2; ! print "$word ->" if $self->{debug__}; ! $word =~ s/[^A-Z]//gi; ! print "$word\n" if $self->{debug__}; ! $self->update_word( $word, $encoded, ' ', ' ', $prefix); ! $self->update_pseudoword( 'trick', 'spacedout', $encoded, $original ); } |
From: Brian S. <xue...@us...> - 2007-08-04 12:41:35
|
Update of /cvsroot/popfile/windows/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19925 Modified Files: Tag: b0_22_2 pfidiag.nsi Log Message: Add the location of the "temporary files" folder to the full report. Index: pfidiag.nsi =================================================================== RCS file: /cvsroot/popfile/windows/test/pfidiag.nsi,v retrieving revision 1.8.4.8 retrieving revision 1.8.4.9 diff -C2 -d -r1.8.4.8 -r1.8.4.9 *** pfidiag.nsi 29 Jul 2007 16:16:26 -0000 1.8.4.8 --- pfidiag.nsi 4 Aug 2007 12:41:36 -0000 1.8.4.9 *************** *** 104,108 **** ;-------------------------------------------------------------------------- ! !define C_VERSION "0.1.6" !define C_OUTFILE "pfidiag.exe" --- 104,108 ---- ;-------------------------------------------------------------------------- ! !define C_VERSION "0.1.7" !define C_OUTFILE "pfidiag.exe" *************** *** 553,556 **** --- 553,578 ---- ;-------------------------------------------------------------------------- + ; Section: Location of temporary files + ;-------------------------------------------------------------------------- + + Section "Location of temporary files" + + StrCmp $G_DIAG_MODE "full" enter_section next_section + + enter_section: + + DetailPrint "------------------------------------------------------------" + DetailPrint "Location used to store temporary files" + DetailPrint "------------------------------------------------------------" + + DetailPrint "" + DetailPrint "$$TEMP folder path = < $TEMP >" + DetailPrint "" + + next_section: + SectionEnd + + + ;-------------------------------------------------------------------------- ; Section: Start Menu Locations and Shortcuts ;-------------------------------------------------------------------------- |
From: Brian S. <xue...@us...> - 2007-07-29 17:14:08
|
Update of /cvsroot/popfile/windows In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25200 Modified Files: Tag: b0_22_2 installer-Uninstall.nsh Log Message: Use the UAC plugin to make the uninstaller run with 'admin' rights (still need to look at the case where the user data uses the same folder as the POPFile program files). Index: installer-Uninstall.nsh =================================================================== RCS file: /cvsroot/popfile/windows/installer-Uninstall.nsh,v retrieving revision 1.4.2.7 retrieving revision 1.4.2.8 diff -C2 -d -r1.4.2.7 -r1.4.2.8 *** installer-Uninstall.nsh 10 Jun 2007 16:06:59 -0000 1.4.2.7 --- installer-Uninstall.nsh 29 Jul 2007 17:14:08 -0000 1.4.2.8 *************** *** 57,60 **** --- 57,91 ---- Function un.onInit + ; Use the UAC plugin to ensure that this uninstaller runs with 'administrator' privileges + ; (UAC = Vista's new "User Account Control" feature). + ; + ; WARNING: The UAC plugin uses $0, $1, $2 and $3 registers + + UAC_Elevate: + UAC::RunElevated + StrCmp 1223 $0 UAC_ElevationAborted ; UAC dialog aborted by user? + StrCmp 0 $0 0 UAC_Err ; Error? + StrCmp 1 $1 0 UAC_Success ; Are we the real deal or just the wrapper? + Quit + + UAC_Err: + MessageBox mb_iconstop "Unable to elevate , error $0" + Abort + + UAC_ElevationAborted: + MessageBox mb_iconstop "This uninstaller requires admin access, aborting!" + Abort + + UAC_Success: + # if $0==0 && $1==0, UAC not supported (Probably <NT6), run as normal? + # if $0==0 && $1==3, we can try to elevate again + # if $0==0 && $3==1, we are a member of the admin group (Any OS) + StrCmp 1 $3 continue ; Admin? + StrCmp 3 $1 0 UAC_ElevationAborted ; Try again? + MessageBox mb_iconstop "This uninstaller requires admin access, try again" + goto UAC_Elevate + + continue: + ; Retrieve the language used when POPFile was installed, and use it for the uninstaller ; (if the language entry is not found in the registry, a 'language selection' dialog is shown) *************** *** 120,123 **** --- 151,174 ---- #-------------------------------------------------------------------------- + # Installer Function: un.OnUninstFailed (required by UAC plugin) + #-------------------------------------------------------------------------- + + Function un.OnUninstFailed + + UAC::Unload ; Must call unload! + + FunctionEnd + + #-------------------------------------------------------------------------- + # Installer Function: un.OnUninstSuccess (required by UAC plugin) + #-------------------------------------------------------------------------- + + Function un.OnUninstSuccess + + UAC::Unload ; Must call unload! + + FunctionEnd + + #-------------------------------------------------------------------------- # Uninstaller Sections (this build uses all of these and executes them in the order shown) # *************** *** 430,434 **** Delete "$G_ROOTDIR\runsqlite.exe" Delete "$G_ROOTDIR\sqlite.exe" ! Delete "$G_ROOTDIR\msgcapture.exe" Delete "$G_ROOTDIR\pfidbstatus.exe" --- 481,485 ---- Delete "$G_ROOTDIR\runsqlite.exe" Delete "$G_ROOTDIR\sqlite.exe" ! Delete "$G_ROOTDIR\msgcapture.exe" Delete "$G_ROOTDIR\pfidbstatus.exe" |
From: Brian S. <xue...@us...> - 2007-07-29 17:13:18
|
Update of /cvsroot/popfile/windows In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24443 Modified Files: Tag: b0_22_2 adduser-Version.nsh adduser.nsi Log Message: Fix the bug that stopped the wizard from using the same language as the POPFile program installer when the installer is started by a limited (or standard) user. Index: adduser-Version.nsh =================================================================== RCS file: /cvsroot/popfile/windows/adduser-Version.nsh,v retrieving revision 1.6.2.13 retrieving revision 1.6.2.14 diff -C2 -d -r1.6.2.13 -r1.6.2.14 *** adduser-Version.nsh 5 May 2007 12:28:07 -0000 1.6.2.13 --- adduser-Version.nsh 29 Jul 2007 17:13:19 -0000 1.6.2.14 *************** *** 7,11 **** #-------------------------------------------------------------------------- ! !define C_PFI_VERSION "0.3.9" #-------------------------------------------------------------------------- --- 7,11 ---- #-------------------------------------------------------------------------- ! !define C_PFI_VERSION "0.3.10" #-------------------------------------------------------------------------- Index: adduser.nsi =================================================================== RCS file: /cvsroot/popfile/windows/adduser.nsi,v retrieving revision 1.59.4.14 retrieving revision 1.59.4.15 diff -C2 -d -r1.59.4.14 -r1.59.4.15 *** adduser.nsi 5 May 2007 12:28:07 -0000 1.59.4.14 --- adduser.nsi 29 Jul 2007 17:13:19 -0000 1.59.4.15 *************** *** 747,758 **** Pop $G_PFISETUP StrCpy $G_PFIFLAG $G_PFISETUP 9 ! StrCmp $G_PFIFLAG "/restore=" special_case ! StrCmp $G_PFISETUP "/install" special_case StrCmp $G_PFISETUP "/installreboot" 0 normal_startup SetRebootFlag true ! special_case: ReadRegStr $LANGUAGE \ "HKCU" "SOFTWARE\POPFile Project\${C_PFI_PRODUCT}\MRI" "Installer Language" Goto extract_files --- 747,770 ---- Pop $G_PFISETUP StrCpy $G_PFIFLAG $G_PFISETUP 9 ! StrCmp $G_PFIFLAG "/restore=" restore_case ! StrCmp $G_PFISETUP "/install" install_case StrCmp $G_PFISETUP "/installreboot" 0 normal_startup SetRebootFlag true ! install_case: ReadRegStr $LANGUAGE \ + "HKLM" "SOFTWARE\POPFile Project\${C_PFI_PRODUCT}\MRI" "Installer Language" + Goto extract_files + + restore_case: + ReadRegStr $G_PFIFLAG \ "HKCU" "SOFTWARE\POPFile Project\${C_PFI_PRODUCT}\MRI" "Installer Language" + StrCmp $G_PFIFLAG "" try_installer_language + StrCpy $LANGUAGE $G_PFIFLAG + Goto extract_files + + try_installer_language: + ReadRegStr $LANGUAGE \ + "HKLM" "SOFTWARE\POPFile Project\${C_PFI_PRODUCT}\MRI" "Installer Language" Goto extract_files |