From c129bf95ec73e78a625d452257740b192e48f5e5 Mon Sep 17 00:00:00 2001 From: The Wine Synchronizer Date: Thu, 29 Nov 2007 09:38:17 +0000 Subject: [PATCH] Autosyncing with Wine HEAD svn path=/trunk/; revision=30855 --- reactos/dll/win32/avifil32/api.c | 8 +- reactos/dll/win32/avifil32/avifil32.rbuild | 9 +-- reactos/dll/win32/avifil32/avifil32_ros.diff | 4 +- reactos/dll/win32/avifil32/avifile.c | 18 +++-- reactos/dll/win32/avifil32/avifile_Cs.rc | 2 +- reactos/dll/win32/avifil32/avifile_De.rc | 2 +- reactos/dll/win32/avifil32/avifile_En.rc | 2 +- reactos/dll/win32/avifil32/avifile_Es.rc | 2 +- reactos/dll/win32/avifil32/avifile_Fr.rc | 6 +- reactos/dll/win32/avifil32/avifile_Hu.rc | 2 +- reactos/dll/win32/avifil32/avifile_Ja.rc | 2 +- reactos/dll/win32/avifil32/avifile_Ko.rc | 2 +- reactos/dll/win32/avifil32/avifile_Nl.rc | 2 +- reactos/dll/win32/avifil32/avifile_No.rc | 2 +- reactos/dll/win32/avifil32/avifile_Pl.rc | 4 +- reactos/dll/win32/avifil32/avifile_Pt.rc | 2 +- reactos/dll/win32/avifil32/avifile_Ru.rc | 2 +- reactos/dll/win32/avifil32/avifile_Si.rc | 2 +- reactos/dll/win32/avifil32/avifile_Sv.rc | 50 +++++++++++++ reactos/dll/win32/avifil32/avifile_Tr.rc | 2 +- reactos/dll/win32/avifil32/avifile_Uk.rc | 2 +- reactos/dll/win32/avifil32/editstream.c | 4 +- reactos/dll/win32/avifil32/getframe.c | 2 +- reactos/dll/win32/avifil32/icmstream.c | 2 +- reactos/dll/win32/avifil32/regsvr.c | 79 ++------------------ reactos/dll/win32/avifil32/rsrc.rc | 1 + reactos/dll/win32/avifil32/wavfile.c | 2 +- 27 files changed, 103 insertions(+), 114 deletions(-) create mode 100644 reactos/dll/win32/avifil32/avifile_Sv.rc diff --git a/reactos/dll/win32/avifil32/api.c b/reactos/dll/win32/avifil32/api.c index b05ba18a73d..40279662719 100644 --- a/reactos/dll/win32/avifil32/api.c +++ b/reactos/dll/win32/avifil32/api.c @@ -550,7 +550,7 @@ HRESULT WINAPI AVIStreamInfoW(PAVISTREAM pstream, LPAVISTREAMINFOW asi, * AVIStreamFindSample (AVIFIL32.@) * AVIStreamFindSample (AVIFILE.163) */ -HRESULT WINAPI AVIStreamFindSample(PAVISTREAM pstream, LONG pos, DWORD flags) +LONG WINAPI AVIStreamFindSample(PAVISTREAM pstream, LONG pos, LONG flags) { TRACE("(%p,%d,0x%X)\n", pstream, pos, flags); @@ -1159,7 +1159,7 @@ HRESULT WINAPI AVIBuildFilterW(LPWSTR szFilter, LONG cbFilter, BOOL fSaving) break; } } - + memcpy(szFilter, szAllFiles, size * sizeof(szAllFiles[0])); szFilter += size; szFilter[0] = 0; @@ -1827,7 +1827,7 @@ HRESULT WINAPI AVISaveVW(LPCWSTR szFile, CLSID *pclsidHandler, if (curStream != 0) { lFirstVideo = AVIStreamSampleToSample(pInStreams[curStream], pInStreams[0], - (sInfo.fccType == streamtypeVIDEO ? + (sInfo.fccType == streamtypeVIDEO ? (LONG)dwInterleave : lSampleInc) + sInfo.dwInitialFrames + lCurFrame); } else @@ -1913,7 +1913,7 @@ HRESULT WINAPI AVISaveVW(LPCWSTR szFile, CLSID *pclsidHandler, hres = AVIStreamReadFormat(pInStreams[curStream], sInfo.dwStart, lpBuffer, &lBufferSize); if (FAILED(hres)) - return hres; + goto error; AVIStreamSetFormat(pOutStreams[curStream], sInfo.dwStart, lpBuffer, lBufferSize); diff --git a/reactos/dll/win32/avifil32/avifil32.rbuild b/reactos/dll/win32/avifil32/avifil32.rbuild index e973dd58435..1aa8f6fa045 100644 --- a/reactos/dll/win32/avifil32/avifil32.rbuild +++ b/reactos/dll/win32/avifil32/avifil32.rbuild @@ -1,14 +1,13 @@ + + . include/reactos/wine - - - 0x600 - 0x501 - 0x501 + 0x600 + 0x600 wine msacm32 msvfw32 diff --git a/reactos/dll/win32/avifil32/avifil32_ros.diff b/reactos/dll/win32/avifil32/avifil32_ros.diff index 98286173d77..c9e9109113f 100644 --- a/reactos/dll/win32/avifil32/avifil32_ros.diff +++ b/reactos/dll/win32/avifil32/avifil32_ros.diff @@ -63,8 +63,8 @@ Index: rsrc.rc =================================================================== --- rsrc.rc (revision 23782) +++ rsrc.rc (working copy) -@@ -54,3 +54,4 @@ - #include "avifile_Ru.rc" +@@ -55,3 +55,4 @@ #include "avifile_Si.rc" + #include "avifile_Sv.rc" #include "avifile_Tr.rc" +#include "avifile_Uk.rc" diff --git a/reactos/dll/win32/avifil32/avifile.c b/reactos/dll/win32/avifil32/avifile.c index 9911c814e2e..a23e326771f 100644 --- a/reactos/dll/win32/avifil32/avifile.c +++ b/reactos/dll/win32/avifil32/avifile.c @@ -1018,14 +1018,15 @@ static HRESULT WINAPI IAVIStream_fnSetFormat(IAVIStream *iface, LONG pos, lppc->peNew[n].peFlags = 0; } - if (mmioSeek(This->paf->hmmio, This->paf->dwNextFramePos, SEEK_SET) == -1) - return AVIERR_FILEWRITE; - if (mmioCreateChunk(This->paf->hmmio, &ck, 0) != S_OK) - return AVIERR_FILEWRITE; - if (mmioWrite(This->paf->hmmio, (HPSTR)lppc, ck.cksize) != ck.cksize) - return AVIERR_FILEWRITE; - if (mmioAscend(This->paf->hmmio, &ck, 0) != S_OK) + if (mmioSeek(This->paf->hmmio, This->paf->dwNextFramePos, SEEK_SET) == -1 || + mmioCreateChunk(This->paf->hmmio, &ck, 0) != S_OK || + mmioWrite(This->paf->hmmio, (HPSTR)lppc, ck.cksize) != ck.cksize || + mmioAscend(This->paf->hmmio, &ck, 0) != S_OK) + { + HeapFree(GetProcessHeap(), 0, lppc); return AVIERR_FILEWRITE; + } + This->paf->dwNextFramePos += ck.cksize + 2 * sizeof(DWORD); HeapFree(GetProcessHeap(), 0, lppc); @@ -1939,6 +1940,7 @@ static HRESULT AVIFILE_LoadIndex(const IAVIFileImpl *This, DWORD size, DWORD off HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, pStream->nIdxFrames * sizeof(AVIINDEXENTRY)); if (pStream->idxFrames == NULL && pStream->nIdxFrames > 0) { pStream->nIdxFrames = 0; + HeapFree(GetProcessHeap(), 0, lp); return AVIERR_MEMORY; } } @@ -2248,7 +2250,7 @@ static HRESULT AVIFILE_SaveFile(IAVIFileImpl *This) ck.cksize, NULL, NULL); if (mmioWrite(This->hmmio, (HPSTR)str, ck.cksize) != ck.cksize) { - HeapFree(GetProcessHeap(), 0, str); + HeapFree(GetProcessHeap(), 0, str); return AVIERR_FILEWRITE; } diff --git a/reactos/dll/win32/avifil32/avifile_Cs.rc b/reactos/dll/win32/avifil32/avifile_Cs.rc index bf8d4340d70..25d4ce56df9 100644 --- a/reactos/dll/win32/avifil32/avifile_Cs.rc +++ b/reactos/dll/win32/avifil32/avifile_Cs.rc @@ -30,7 +30,7 @@ CAPTION "Nastaven FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Vyber datov proud:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "V&olby...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "Prolo&it kadch",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_De.rc b/reactos/dll/win32/avifil32/avifile_De.rc index 74435b70bac..7539af26186 100644 --- a/reactos/dll/win32/avifil32/avifile_De.rc +++ b/reactos/dll/win32/avifil32/avifile_De.rc @@ -24,7 +24,7 @@ CAPTION "Komprimierungsoptionen" FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Whlen Sie die Eingangsdaten aus:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Optionen...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Interleave alle",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_En.rc b/reactos/dll/win32/avifil32/avifile_En.rc index 5d1b6f39b4f..2fc5b451cb6 100644 --- a/reactos/dll/win32/avifil32/avifile_En.rc +++ b/reactos/dll/win32/avifil32/avifile_En.rc @@ -24,7 +24,7 @@ CAPTION "Compress options" FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Choose a stream:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Options...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Interleave every",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Es.rc b/reactos/dll/win32/avifil32/avifile_Es.rc index d0166e4169c..ee3e73a4c81 100644 --- a/reactos/dll/win32/avifil32/avifile_Es.rc +++ b/reactos/dll/win32/avifil32/avifile_Es.rc @@ -24,7 +24,7 @@ CAPTION "Opciones de compresi FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Elija un stream:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Opciones...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Interleave cada",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Fr.rc b/reactos/dll/win32/avifil32/avifile_Fr.rc index 4af35796dc5..ceb751bc669 100644 --- a/reactos/dll/win32/avifil32/avifile_Fr.rc +++ b/reactos/dll/win32/avifil32/avifile_Fr.rc @@ -28,13 +28,13 @@ CAPTION "Options de compression" FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Slectionnez un flux :",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Options...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Imbriquer chaque",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP EDITTEXT IDC_INTERLEAVEEVERY,66,41,32,12,ES_AUTOHSCROLL LTEXT "images",-1,104,43,36,9 - LTEXT "Format actuel :",-1,3,56,53,9 + LTEXT "Format actuel:",-1,3,56,53,9 LTEXT "Cet espace est louer",IDC_FORMATTEXT,55,56,90,26 DEFPUSHBUTTON "OK",IDOK,145,42,45,14 PUSHBUTTON "Annuler",IDCANCEL,145,61,45,14 @@ -42,7 +42,7 @@ END STRINGTABLE DISCARDABLE { - IDS_WAVESTREAMFORMAT "Waveform: %s" + IDS_WAVESTREAMFORMAT "Waveform: %s" IDS_WAVEFILETYPE "Waveform" IDS_ALLMULTIMEDIA "Tous les fichiers multimdias" IDS_ALLFILES "Tous les fichier (*.*)@*.*" diff --git a/reactos/dll/win32/avifil32/avifile_Hu.rc b/reactos/dll/win32/avifil32/avifile_Hu.rc index 1403ebf4309..8eb98250219 100644 --- a/reactos/dll/win32/avifil32/avifile_Hu.rc +++ b/reactos/dll/win32/avifil32/avifile_Hu.rc @@ -24,7 +24,7 @@ CAPTION "T FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Vlassuon folyamot:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Opcik...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Bekel minden",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Ja.rc b/reactos/dll/win32/avifil32/avifile_Ja.rc index eaa4e1a4add..38fc247611b 100644 --- a/reactos/dll/win32/avifil32/avifile_Ja.rc +++ b/reactos/dll/win32/avifil32/avifile_Ja.rc @@ -24,7 +24,7 @@ CAPTION " FONT 9, "MS UI Gothic" BEGIN LTEXT "Xg[I(&C):",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "IvV(&O)...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "C^[[u(&I)",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Ko.rc b/reactos/dll/win32/avifil32/avifile_Ko.rc index c92b8d883e4..035888cc1be 100644 --- a/reactos/dll/win32/avifil32/avifile_Ko.rc +++ b/reactos/dll/win32/avifil32/avifile_Ko.rc @@ -25,7 +25,7 @@ CAPTION " FONT 8, "MS Shell Dlg" BEGIN LTEXT "Ʈ (&C):",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "ɼ(&O)...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "׻ ȣġ(&I)",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Nl.rc b/reactos/dll/win32/avifil32/avifile_Nl.rc index 9035857f754..9d6ce689466 100644 --- a/reactos/dll/win32/avifil32/avifile_Nl.rc +++ b/reactos/dll/win32/avifil32/avifile_Nl.rc @@ -26,7 +26,7 @@ CAPTION "Compressie-instellingen" FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Kies een invoerbestand:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Opties...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Interleave alle",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_No.rc b/reactos/dll/win32/avifil32/avifile_No.rc index 06fadd23414..8ead416b76e 100644 --- a/reactos/dll/win32/avifil32/avifile_No.rc +++ b/reactos/dll/win32/avifil32/avifile_No.rc @@ -24,7 +24,7 @@ CAPTION "Komprimeringsinnstillinger" FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Velg en strm:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "I&nnstillinger . . .",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "Sett &inn for hver",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Pl.rc b/reactos/dll/win32/avifil32/avifile_Pl.rc index 29fc21731b4..7fe0ca2d70a 100644 --- a/reactos/dll/win32/avifil32/avifile_Pl.rc +++ b/reactos/dll/win32/avifil32/avifile_Pl.rc @@ -25,14 +25,14 @@ CAPTION "Opcje kompresji" FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Wybierz strumie:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Opcje...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Przeplot co",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP EDITTEXT IDC_INTERLEAVEEVERY,66,41,32,12,ES_AUTOHSCROLL LTEXT "klatek",-1,104,43,36,9 LTEXT "Wybrany format:",-1,2,56,53,9 - LTEXT "Zarezerwownae miejsce",IDC_FORMATTEXT,55,56,90,26 + LTEXT "Zarezerwowane miejsce",IDC_FORMATTEXT,55,56,90,26 DEFPUSHBUTTON "OK",IDOK,145,42,45,14 PUSHBUTTON "Anuluj",IDCANCEL,145,61,45,14 END diff --git a/reactos/dll/win32/avifil32/avifile_Pt.rc b/reactos/dll/win32/avifil32/avifile_Pt.rc index 334b6d77c55..7e5d1c530d8 100644 --- a/reactos/dll/win32/avifil32/avifile_Pt.rc +++ b/reactos/dll/win32/avifil32/avifile_Pt.rc @@ -25,7 +25,7 @@ CAPTION "Op FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Escolha a stream:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Opes...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Interleave every",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Ru.rc b/reactos/dll/win32/avifil32/avifile_Ru.rc index aaf277d327e..88f313c5ec0 100644 --- a/reactos/dll/win32/avifil32/avifile_Ru.rc +++ b/reactos/dll/win32/avifil32/avifile_Ru.rc @@ -26,7 +26,7 @@ CAPTION " FONT 8, "MS Shell Dlg" BEGIN LTEXT "& :",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "& ",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Si.rc b/reactos/dll/win32/avifil32/avifile_Si.rc index 1b0ed56d7f8..1b5d7dc70aa 100644 --- a/reactos/dll/win32/avifil32/avifile_Si.rc +++ b/reactos/dll/win32/avifil32/avifile_Si.rc @@ -24,7 +24,7 @@ CAPTION "Mo FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Izbira toka:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Monosti ...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Preplet vsake",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Sv.rc b/reactos/dll/win32/avifil32/avifile_Sv.rc new file mode 100644 index 00000000000..3517edd4481 --- /dev/null +++ b/reactos/dll/win32/avifil32/avifile_Sv.rc @@ -0,0 +1,50 @@ +/* + * Copyright 2007 Daniel Nylander + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +LANGUAGE LANG_SWEDISH, SUBLANG_DEFAULT + +IDD_SAVEOPTIONS DIALOG FIXED IMPURE 43, 37, 196, 82 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Komprimeringsalternativ" +FONT 8, "MS Shell Dlg" +BEGIN + LTEXT "&Vlj en strm:",-1,2,5,114,10 + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + WS_TABSTOP + PUSHBUTTON "A<ernativ...",IDC_OPTIONS,145,17,45,14 + AUTOCHECKBOX "&Interfoliera varje",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP + EDITTEXT IDC_INTERLEAVEEVERY,66,41,32,12,ES_AUTOHSCROLL + LTEXT "frames",-1,104,43,36,9 + LTEXT "Aktuellt format:",-1,3,56,53,9 + LTEXT "Detta utrymme uthyres",IDC_FORMATTEXT,55,56,90,26 + DEFPUSHBUTTON "OK",IDOK,145,42,45,14 + PUSHBUTTON "Avbryt",IDCANCEL,145,61,45,14 +END + +STRINGTABLE DISCARDABLE +{ + IDS_WAVESTREAMFORMAT "Vgform: %s" + IDS_WAVEFILETYPE "Vgform" + IDS_ALLMULTIMEDIA "Alla multimediafiler" + IDS_ALLFILES "Alla filer (*.*)@*.*" + IDS_VIDEO "video" + IDS_AUDIO "ljud" + IDS_AVISTREAMFORMAT "%s %s #%d" + IDS_AVIFILETYPE "Wine AVI-standardfilhanterare" + IDS_UNCOMPRESSED "okomprimerad" +} diff --git a/reactos/dll/win32/avifil32/avifile_Tr.rc b/reactos/dll/win32/avifil32/avifile_Tr.rc index 67c297f3936..b9caa67e463 100644 --- a/reactos/dll/win32/avifil32/avifile_Tr.rc +++ b/reactos/dll/win32/avifil32/avifile_Tr.rc @@ -24,7 +24,7 @@ CAPTION "S FONT 8, "MS Shell Dlg" BEGIN LTEXT "Bir ak se&in:",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&Seenekler...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "&Interleave every",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/avifile_Uk.rc b/reactos/dll/win32/avifil32/avifile_Uk.rc index 87911496031..759811a85e9 100644 --- a/reactos/dll/win32/avifil32/avifile_Uk.rc +++ b/reactos/dll/win32/avifil32/avifile_Uk.rc @@ -14,7 +14,7 @@ CAPTION " FONT 8, "MS Shell Dlg" BEGIN LTEXT "& :",-1,2,5,114,10 - COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | + COMBOBOX IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP PUSHBUTTON "&...",IDC_OPTIONS,145,17,45,14 AUTOCHECKBOX "& ",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP diff --git a/reactos/dll/win32/avifil32/editstream.c b/reactos/dll/win32/avifil32/editstream.c index 8857d094c39..14d361e2a32 100644 --- a/reactos/dll/win32/avifil32/editstream.c +++ b/reactos/dll/win32/avifil32/editstream.c @@ -653,7 +653,7 @@ static HRESULT WINAPI IAVIEditStream_fnPaste(IAVIEditStream*iface,LONG*plStart, nLastStream++; nStreams = nLastStream - streamNr; - } else + } else nStreams = 1; if (This->nStreams + nStreams + 1 > This->nTableSize) { n = This->nStreams + nStreams + 33; @@ -944,7 +944,7 @@ static HRESULT WINAPI IEditAVIStream_fnReadFormat(IAVIStream*iface,LONG pos, } else n = 0; n += lp->biSize; - + memcpy(format, lp, min((LONG)n, *fmtsize)); hr = ((LONG)n > *fmtsize ? AVIERR_BUFFERTOOSMALL : AVIERR_OK); *fmtsize = n; diff --git a/reactos/dll/win32/avifil32/getframe.c b/reactos/dll/win32/avifil32/getframe.c index efb9d867661..d342b1255ae 100644 --- a/reactos/dll/win32/avifil32/getframe.c +++ b/reactos/dll/win32/avifil32/getframe.c @@ -387,7 +387,7 @@ static HRESULT WINAPI IGetFrame_fnSetFormat(IGetFrame *iface, /* only to pass through? */ if (This->lpInFormat->biCompression == BI_RGB && lpBits == NULL) { - if (lpbi == NULL || + if (lpbi == NULL || (lpbi->biCompression == BI_RGB && lpbi->biWidth == This->lpInFormat->biWidth && lpbi->biHeight == This->lpInFormat->biHeight && diff --git a/reactos/dll/win32/avifil32/icmstream.c b/reactos/dll/win32/avifil32/icmstream.c index f7ca317e2d9..82536052d15 100644 --- a/reactos/dll/win32/avifil32/icmstream.c +++ b/reactos/dll/win32/avifil32/icmstream.c @@ -815,7 +815,7 @@ static HRESULT AVIFILE_EncodeFrame(IAVIStreamImpl *This, dwMinQual = ICQUALITY_LOW; noPrev = TRUE; - if ((icmFlags & ICCOMPRESS_KEYFRAME) == 0 && + if ((icmFlags & ICCOMPRESS_KEYFRAME) == 0 && (This->dwICMFlags & VIDCF_FASTTEMPORALC) == 0) noPrev = FALSE; diff --git a/reactos/dll/win32/avifil32/regsvr.c b/reactos/dll/win32/avifil32/regsvr.c index c98de1b81e7..6ec40856368 100644 --- a/reactos/dll/win32/avifil32/regsvr.c +++ b/reactos/dll/win32/avifil32/regsvr.c @@ -116,9 +116,6 @@ static LONG register_key_defvalueA(HKEY base, WCHAR const *name, static LONG register_progid(WCHAR const *clsid, char const *progid, char const *curver_progid, char const *name, char const *extra); -static LONG recursive_delete_key(HKEY key); -static LONG recursive_delete_keyA(HKEY base, char const *name); -static LONG recursive_delete_keyW(HKEY base, WCHAR const *name); /*********************************************************************** * register_interfaces @@ -207,7 +204,8 @@ static HRESULT unregister_interfaces(struct regsvr_interface const *list) WCHAR buf[39]; StringFromGUID2(list->iid, buf, 39); - res = recursive_delete_keyW(interface_key, buf); + res = RegDeleteTreeW(interface_key, buf); + if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS; } RegCloseKey(interface_key); @@ -314,16 +312,19 @@ static HRESULT unregister_coclasses(struct regsvr_coclass const *list) WCHAR buf[39]; StringFromGUID2(list->clsid, buf, 39); - res = recursive_delete_keyW(coclass_key, buf); + res = RegDeleteTreeW(coclass_key, buf); + if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS; if (res != ERROR_SUCCESS) goto error_close_coclass_key; if (list->progid) { - res = recursive_delete_keyA(HKEY_CLASSES_ROOT, list->progid); + res = RegDeleteTreeA(HKEY_CLASSES_ROOT, list->progid); + if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS; if (res != ERROR_SUCCESS) goto error_close_coclass_key; } if (list->viprogid) { - res = recursive_delete_keyA(HKEY_CLASSES_ROOT, list->viprogid); + res = RegDeleteTreeA(HKEY_CLASSES_ROOT, list->viprogid); + if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS; if (res != ERROR_SUCCESS) goto error_close_coclass_key; } } @@ -435,70 +436,6 @@ error_close_progid_key: return res; } -/*********************************************************************** - * recursive_delete_key - */ -static LONG recursive_delete_key(HKEY key) -{ - LONG res; - WCHAR subkey_name[MAX_PATH]; - DWORD cName; - HKEY subkey; - - for (;;) { - cName = sizeof(subkey_name) / sizeof(WCHAR); - res = RegEnumKeyExW(key, 0, subkey_name, &cName, - NULL, NULL, NULL, NULL); - if (res != ERROR_SUCCESS && res != ERROR_MORE_DATA) { - res = ERROR_SUCCESS; /* presumably we're done enumerating */ - break; - } - res = RegOpenKeyExW(key, subkey_name, 0, - KEY_READ | KEY_WRITE, &subkey); - if (res == ERROR_FILE_NOT_FOUND) continue; - if (res != ERROR_SUCCESS) break; - - res = recursive_delete_key(subkey); - RegCloseKey(subkey); - if (res != ERROR_SUCCESS) break; - } - - if (res == ERROR_SUCCESS) res = RegDeleteKeyW(key, 0); - return res; -} - -/*********************************************************************** - * recursive_delete_keyA - */ -static LONG recursive_delete_keyA(HKEY base, char const *name) -{ - LONG res; - HKEY key; - - res = RegOpenKeyExA(base, name, 0, KEY_READ | KEY_WRITE, &key); - if (res == ERROR_FILE_NOT_FOUND) return ERROR_SUCCESS; - if (res != ERROR_SUCCESS) return res; - res = recursive_delete_key(key); - RegCloseKey(key); - return res; -} - -/*********************************************************************** - * recursive_delete_keyW - */ -static LONG recursive_delete_keyW(HKEY base, WCHAR const *name) -{ - LONG res; - HKEY key; - - res = RegOpenKeyExW(base, name, 0, KEY_READ | KEY_WRITE, &key); - if (res == ERROR_FILE_NOT_FOUND) return ERROR_SUCCESS; - if (res != ERROR_SUCCESS) return res; - res = recursive_delete_key(key); - RegCloseKey(key); - return res; -} - /*********************************************************************** * coclass list */ diff --git a/reactos/dll/win32/avifil32/rsrc.rc b/reactos/dll/win32/avifil32/rsrc.rc index 60b376587de..5b823f1acd1 100644 --- a/reactos/dll/win32/avifil32/rsrc.rc +++ b/reactos/dll/win32/avifil32/rsrc.rc @@ -53,5 +53,6 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL #include "avifile_Pt.rc" #include "avifile_Ru.rc" #include "avifile_Si.rc" +#include "avifile_Sv.rc" #include "avifile_Tr.rc" #include "avifile_Uk.rc" diff --git a/reactos/dll/win32/avifil32/wavfile.c b/reactos/dll/win32/avifil32/wavfile.c index 59e08a828a1..d3048d60318 100644 --- a/reactos/dll/win32/avifil32/wavfile.c +++ b/reactos/dll/win32/avifil32/wavfile.c @@ -915,7 +915,7 @@ static HRESULT WINAPI IAVIStream_fnRead(IAVIStream *iface, LONG start, if (bytesread != NULL) *bytesread = buffersize; if (samplesread != NULL) - *samplesread = samples; + *samplesread = samples; return AVIERR_OK; }