Changeset 37982

Show
Ignore:
Timestamp:
07/20/10 13:42:12 (4 years ago)
Author:
saturday06
Message:

tsuadsfsd

Location:
lang/c/AutoUpdater/trunk/recipes
Files:
2 added
4 modified

Legend:

Unmodified
Added
Removed
  • lang/c/AutoUpdater/trunk/recipes/AutoUpdater.vcproj

    r37980 r37982  
    192192                        > 
    193193                        <File 
     194                                RelativePath=".\extracter\7za\7za.h" 
     195                                > 
     196                        </File> 
     197                        <File 
    194198                                RelativePath="..\AutoUpdater.h" 
    195199                                > 
  • lang/c/AutoUpdater/trunk/recipes/Copy.c

    r37977 r37982  
    77    size_t i = 0; 
    88    unsigned char* dest = (unsigned char*)dest_; 
     9        if (!dest_) { 
     10                return dest_; 
     11        } 
    912    for (i = 0; i < count; ++i) { 
    1013        dest[i] = (unsigned char)c; 
     
    282285    } 
    283286 
    284     CloseHandle(hFile); 
    285     CloseHandle(hProcess); 
     287        if (hFile != INVALID_HANDLE_VALUE) { 
     288            CloseHandle(hFile); 
     289        } 
     290        if (hProcess) { 
     291                CloseHandle(hProcess); 
     292        } 
    286293 
    287294    if (clean_command) { 
     
    295302        AUI_Debug(_T("CreateProcess(del): command=%s, cd=%s\n"), clean_command, temp_path); 
    296303        CreateProcess(NULL, clean_command, NULL, NULL, FALSE, 0, NULL, temp_path, &si, &pi); 
    297         /* 
    298304            CloseHandle(pi.hThread); 
    299305            CloseHandle(pi.hProcess); 
    300         */ 
    301306    } 
    302307 
  • lang/c/AutoUpdater/trunk/recipes/Makefile.copy

    r37977 r37982  
    11 
    2 ../updater.h: ../Release/UpdaterProcess.exe 
    3         ruby ../carray.rb AUI_UPDATER $< > $@ 
     2Copy.inl: Release/Copy.exe 
     3        upx --ultra-brute $< || true 
     4        ruby carray.rb AUI_UPDATER $< > $@ 
    45 
    5 #updater.h: updater.exe 
    6 #upx --ultra-brute -o updater_compress.exe updater.exe 
    7 #ruby ../carray.rb AUI_UPDATER updater.exe > ../updater.h 
    86 
    9 updater.exe: UpdaterProcess.c 
     7Release/Copy.exe: Copy.c 
    108        gcc -DUNICODE -D_UNICODE -s -Wall -Wextra -Os -o $@  $< 
    119 
    1210clean: 
    13         rm -f *.exe *.o ../updater.h  
     11        rm -f Copy.inl 
     12     
  • lang/c/AutoUpdater/trunk/recipes/Template.c

    r37980 r37982  
    144144    int ready; 
    145145} AUI_Context; 
     146 
     147AU_Result AUI_Extract(AUI_Context* context); 
    146148 
    147149const AU_Result AUI_SUCCESS = {1, 0, AU_NO_ERROR}; 
     
    907909extern const size_t AUI_UPDATER_BYTES; 
    908910extern const char AUI_UPDATER_DATA[]; 
    909 AU_Result AUI_ExtractBy7za(AUI_Context* context); 
    910911 
    911912AU_Result AUI_StartUpdate(AUI_Context* context) { 
     
    936937    } 
    937938 
    938     AUI_ExtractBy7za(context); 
     939    AUI_Extract(context); 
    939940 
    940941    { 
     
    963964 
    964965        _tfopen_s(&f, context->updater_config_file_path, _T("wb")); 
    965         _ftprintf(f, 
    966             _T("DUMMY_FOR_BOM\n") 
    967             _T("%d\n") 
    968             _T("%s\n") 
    969             _T("%s\n") 
    970             _T("%s\n") 
    971             _T("%s\n") 
    972             _T("%s\n") 
    973             , GetCurrentProcessId(), context->extracted_dir_path, target, myname, cd, context->temp_dir_path); 
    974         fclose(f); 
     966                if (!f) { 
     967            return E(AU_ERROR_SYSTEM); 
     968                } 
     969                _ftprintf(f, 
     970                        _T("DUMMY_FOR_BOM\r\n") 
     971                        _T("%d\r\n") 
     972                        _T("%s\r\n") 
     973                        _T("%s\r\n") 
     974                        _T("%s\r\n") 
     975                        _T("%s\r\n") 
     976                        _T("%s\r\n") 
     977                        , GetCurrentProcessId(), context->extracted_dir_path, target, myname, cd, context->temp_dir_path); 
     978                fclose(f); 
    975979    } 
    976980 
     
    11051109} 
    11061110 
    1107 extern const size_t AUI_ARCHIVER_BYTES; 
    1108 extern const char AUI_ARCHIVER_DATA[]; 
    1109  
    1110 AU_Result AUI_ExtractBy7za(AUI_Context* context) { 
    1111     AU_Result r; 
    1112     FILE* f = NULL; 
    1113  
    1114     r = E(AU_ERROR_SYSTEM); 
    1115  
    1116     _tfopen_s(&f, context->extracter_file_path, _T("wb")); 
    1117     if (!f) { 
    1118         return r; 
    1119     } 
    1120     fwrite(AUI_ARCHIVER_DATA, AUI_ARCHIVER_BYTES, 1, f); 
    1121     fclose(f); 
    1122  
    1123     { 
    1124         STARTUPINFO si; 
    1125         PROCESS_INFORMATION pi; 
    1126         TCHAR command[] = _T("extracter.exe x -y -oextracted archive_file"); 
    1127         memset(&si, 0, sizeof(si)); 
    1128         si.cb = sizeof(si); 
    1129         memset(&pi, 0, sizeof(pi)); 
    1130         CreateProcess(context->extracter_file_path, command, NULL, NULL, FALSE, 0, NULL, context->temp_dir_path, &si, &pi); 
    1131         WaitForSingleObject(pi.hProcess, INFINITE); 
    1132                 CloseHandle(pi.hThread); 
    1133                 CloseHandle(pi.hProcess); 
    1134     } 
    1135     return AUI_SUCCESS; 
    1136 } 
    1137  
    11381111#include "XDef.h" 
    11391112#include "Copy.inl"