Skip to content

Commit d9463aa

Browse files
committed
2004-04-18
1 parent 8ea5ac6 commit d9463aa

File tree

6 files changed

+56
-35
lines changed

6 files changed

+56
-35
lines changed

delogo.rc

+3-3
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ FONT 9, "
8989
// VERSION INFO
9090
//
9191
VS_VIRSION_INFO VERSIONINFO
92-
FILEVERSION 0,0,8,0
92+
FILEVERSION 0,0,8,1
9393
PRODUCTVERSION 0,0,8
9494
FILEFLAGSMASK 0x3FL
9595
FILEFLAGS 0x0L
@@ -103,12 +103,12 @@ VS_VIRSION_INFO VERSIONINFO
103103
{
104104
// VALUE "Comments", "���S�T���v���񋟎ҕ�W��\0"
105105
VALUE "FileDescription", "���ߐ����S �t�B���^ Plugin for AviUtl 0.98\0"
106-
VALUE "FileVersion", "0.0.8.0\0"
106+
VALUE "FileVersion", "0.0.8.1\0"
107107
VALUE "InternalName", "deLogo\0"
108108
VALUE "LegalCopyright", "(C) MakKi\0"
109109
VALUE "OriginalFilename", "delogo.aup\0"
110110
VALUE "ProductName", "���ߐ����S �t�B���^\0"
111-
VALUE "ProductVersion", "0.08\0"
111+
VALUE "ProductVersion", "0.08a\0"
112112
}
113113
}
114114
BLOCK "VarFileInfo"

filter.c

+19-12
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*********************************************************************
22
* 透過性ロゴ(BSマークとか)除去フィルタ
3-
* ver 0.08
3+
* ver 0.08a
44
*
55
* 2003
66
* 02/01: 製作開始
@@ -58,6 +58,8 @@
5858
* 10/25: 位置調整で-200以下にすると落ちるバグ修正。(0.07b)
5959
* 2004
6060
* 02/18: AviSynthスクリプトを吐くボタン追加。(0.08)
61+
* 04/17: ロゴデータファイル読み込み時にデータが一つも無い時エラーを出さないようにした。
62+
* 開始・終了の最大値を4096まで増やした。(0.08a)
6163
*
6264
*********************************************************************/
6365

@@ -167,15 +169,15 @@ BOOL func_proc_add_logo(FILTER *fp,FILTER_PROC_INFO *fpip,LOGO_HEADER *lgh,int);
167169
// FILTER_DLL構造体
168170
//----------------------------
169171
char filter_name[] = LOGO_FILTER_NAME;
170-
char filter_info[] = LOGO_FILTER_NAME" ver 0.08 by MakKi";
172+
char filter_info[] = LOGO_FILTER_NAME" ver 0.08a by MakKi";
171173
#define track_N 10
172174
#if track_N
173175
TCHAR *track_name[] = { "位置 X", "位置 Y",
174176
"深度", "Y", "Cb", "Cr",
175177
"開始", "FadeIn", "FadeOut", "終了" }; // トラックバーの名前
176178
int track_default[] = { 0, 0, 128, 0, 0, 0, 0, 0, 0, 0 }; // トラックバーの初期値
177179
int track_s[] = { LOGO_XY_MIN, LOGO_XY_MIN, 0, -100, -100, -100, 0, 0, 0, 0 }; // トラックバーの下限値
178-
int track_e[] = { LOGO_XY_MAX, LOGO_XY_MAX, 256, 100, 100, 100, 256, 256, 256, 256 }; // トラックバーの上限値
180+
int track_e[] = { LOGO_XY_MAX, LOGO_XY_MAX, 256, 100, 100, 100, 4096, 256, 256, 4096 }; // トラックバーの上限値
179181
#endif
180182
#define check_N 2
181183
#if check_N
@@ -590,6 +592,7 @@ static void on_wm_filter_exit(FILTER* fp)
590592
DWORD dw;
591593
HANDLE hFile;
592594
void* data;
595+
LOGO_FILE_HEADER lfh;
593596

594597
if(lstrlen(logodata_file)==0){ // ロゴデータファイル名がないとき
595598
if(!fp->exfunc->dlg_get_load_name(logodata_file,LDP_FILTER,LDP_DEFAULT)){
@@ -623,8 +626,10 @@ static void on_wm_filter_exit(FILTER* fp)
623626
SetFilePointer(hFile,0, 0, FILE_BEGIN); // 先頭へ
624627

625628
// ヘッダ書き込み
629+
ZeroMemory(&lfh,sizeof(lfh));
630+
strcpy(lfh.str,LOGO_FILE_HEADER_STR);
626631
dw = 0;
627-
WriteFile(hFile,LOGO_FILE_HEADER,32,&dw,NULL);
632+
WriteFile(hFile,&lfh,sizeof(LOGO_FILE_HEADER),&dw,NULL);
628633
if(dw!=32){ // 書き込み失敗
629634
MessageBox(fp->hwnd,"ロゴデータ保存に失敗しました(1)",filter_name,MB_OK|MB_ICONERROR);
630635
}
@@ -642,10 +647,11 @@ static void on_wm_filter_exit(FILTER* fp)
642647
n++;
643648
}
644649

645-
SetFilePointer(hFile,31, 0, FILE_BEGIN); // 先頭から31byteへ
650+
lfh.logonum = n;
651+
SetFilePointer(hFile,0, 0, FILE_BEGIN); // 先頭へ
646652
dw = 0;
647-
WriteFile(hFile,&n,1,&dw,NULL);
648-
if(dw!=1)
653+
WriteFile(hFile,&lfh,sizeof(lfh),&dw,NULL);
654+
if(dw!=sizeof(lfh))
649655
MessageBox(fp->hwnd,"ロゴデータ保存に失敗しました(3)",filter_name,MB_OK|MB_ICONERROR);
650656
}
651657

@@ -958,11 +964,12 @@ static void del_combo_item(int num)
958964
static void read_logo_pack(char *fname,FILTER *fp)
959965
{
960966
HANDLE hFile;
967+
LOGO_FILE_HEADER lfh;
961968
LOGO_HEADER lgh;
962969
DWORD readed = 0;
963970
ULONG ptr;
964971
void* data;
965-
unsigned char num; // ファイルに含まれるデータの数
972+
// unsigned char num; // ファイルに含まれるデータの数
966973
int i;
967974
int same;
968975
char message[255];
@@ -974,19 +981,19 @@ static void read_logo_pack(char *fname,FILTER *fp)
974981
MessageBox(fp->hwnd,"ロゴデータファイルが見つかりません",filter_name,MB_OK|MB_ICONERROR);
975982
return;
976983
}
977-
if(GetFileSize(hFile, NULL)<sizeof(LOGO_HEADER)){ // サイズ確認
984+
if(GetFileSize(hFile, NULL)<sizeof(LOGO_FILE_HEADER)){ // サイズ確認
978985
CloseHandle(hFile);
979986
MessageBox(fp->hwnd,"ロゴデータファイルが不正です",filter_name,MB_OK|MB_ICONERROR);
980987
return;
981988
}
982989

983-
SetFilePointer(hFile,31, 0, FILE_BEGIN); // 先頭から31byteへ
984-
ReadFile(hFile,&num,1,&readed,NULL); // データ数取得
990+
// SetFilePointer(hFile,31, 0, FILE_BEGIN); // 先頭から31byteへ
991+
ReadFile(hFile,&lfh,sizeof(LOGO_FILE_HEADER),&readed,NULL); // ファイルヘッダ取得
985992

986993
logodata_n = 0; // 書き込みデータカウンタ
987994
logodata = NULL;
988995

989-
for(i=0;i<num;i++){
996+
for(i=0;i<lfh.logonum;i++){
990997

991998
// LOGO_HEADER 読み込み
992999
readed = 0;

logo.h

+6-1
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,14 @@
2929
* 31BYTEの文字列
3030
* データ数 1BYTE
3131
*/
32-
#define LOGO_FILE_HEADER "<logo data file ver0.1>\0\0\0\0\0\0\0\0\0\0\0"
32+
#define LOGO_FILE_HEADER_STR "<logo data file ver0.1>\0\0\0\0\0\0\0\0\0\0\0"
3333
#define LOGO_FILE_HEADER_STR_SIZE 31
3434

35+
typedef struct {
36+
char str[LOGO_FILE_HEADER_STR_SIZE];
37+
unsigned char logonum;
38+
} LOGO_FILE_HEADER;
39+
3540

3641
/* ロゴデータ最大サイズ:
3742
* ロゴデータをプロファイルに保存しないようにしたため、

optdlg.c

+11-15
Original file line numberDiff line numberDiff line change
@@ -486,6 +486,7 @@ static void ExportLogoData(char *fname,void *data,HWND hdlg)
486486
DWORD size;
487487
char c =1;
488488
int s =0;
489+
LOGO_FILE_HEADER lfh;
489490

490491
// ファイルを開く
491492
hFile = CreateFile(fname,GENERIC_WRITE,0,0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
@@ -495,30 +496,25 @@ static void ExportLogoData(char *fname,void *data,HWND hdlg)
495496
SetFilePointer(hFile,0, 0, FILE_BEGIN); // 先頭へ
496497

497498
// ヘッダ書き込み
499+
ZeroMemory(&lfh,sizeof(lfh));
500+
strcpy(lfh.str,LOGO_FILE_HEADER_STR);
501+
lfh.logonum = 1; // データ数は必ず1
502+
498503
dw = 0;
499-
WriteFile(hFile,LOGO_FILE_HEADER,31,&dw,NULL);
500-
if(dw!=31){ // 書き込み失敗
504+
WriteFile(hFile,&lfh,sizeof(lfh),&dw,NULL);
505+
if(dw!=sizeof(lfh)){ // 書き込み失敗
501506
MessageBox(hdlg,"ロゴデータ保存に失敗しました(1)",filter_name,MB_OK|MB_ICONERROR);
502507
s=1;
503508
}
504509
else{ // 成功
505-
// データ数書き込み(必ず1)
510+
// データ書き込み
511+
size = LOGO_DATASIZE(data); // データサイズ取得
506512
dw = 0;
507-
WriteFile(hFile,&c,1,&dw,NULL);
508-
if(dw!=1){ // 書き込み失敗
513+
WriteFile(hFile,data,size,&dw,NULL);
514+
if(dw!=size){
509515
MessageBox(hdlg,"ロゴデータ保存に失敗しました(2)",filter_name,MB_OK|MB_ICONERROR);
510516
s=1;
511517
}
512-
else{ // 成功
513-
// データ書き込み
514-
size = LOGO_DATASIZE(data); // データサイズ取得
515-
dw = 0;
516-
WriteFile(hFile,data,size,&dw,NULL);
517-
if(dw!=size){
518-
MessageBox(hdlg,"ロゴデータ保存に失敗しました(3)",filter_name,MB_OK|MB_ICONERROR);
519-
s=1;
520-
}
521-
}
522518
}
523519

524520
CloseHandle(hFile);

readme.txt

+7-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
-----------------------------------------------------------------------
2-
���ߐ����S �t�B���^�v���O�C�� ver0.08 by MakKi
2+
���ߐ����S �t�B���^�v���O�C�� ver0.08a by MakKi
33
-----------------------------------------------------------------------
44

55
�y�@�\�z
@@ -95,7 +95,10 @@
9595
���̃t�B���^�����ɂ�����Akei �l�ɑ���ȏ��������������܂����B
9696
BS-2 �̃��S�T���v���� kei �l���
9797
Animax �̃��S�T���v���� kazuki �l���
98-
tbs-ch �̃��S�f�[�^�� �C�܂���o���� �l��� �񋟂��Ă��������܂����B
98+
tbs-ch �̃��S�f�[�^�� �C�܂���o���� �l���
99+
favoriTV �̃��S�f�[�^�� ���� �l���
100+
BS-i�A�t�W�e���r721 �̃��S�f�[�^�� �v���U���X �l���
101+
BS-Asahi�ABS-hi�A���{�f��`�����l�� �̃��S�f�[�^�� �a �l��� �񋟂��Ă��������܂����B
99102
���肪�Ƃ��������܂��B
100103

101104
�y�R�����g�z
@@ -110,6 +113,8 @@
110113

111114
�y�X�V�����z
112115

116+
2004/04/18 ver 0.08a �E���S�f�[�^�t�@�C���ǂݍ��ݎ��Ƀf�[�^����‚��������G���[���o���Ȃ��悤�ɂ���
117+
�E�J�n��I���̍ő�l��4096�܂ő��₵��
113118
2004/02/18 ver 0.08 �EAviSynth�X�N���v�g�𐶐�����@�\��lj�
114119
2003/10/26 ver 0.07b �E�ʒu������-200�����ɂ���Ɨ�����o�O�C���B
115120
2003/10/21 ver 0.07a �E���O��RGB->YCbCr����悤�ɂ����B(SSE2�ł̕s��΍�)

strdlg.c

+10-2
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,16 @@ static BOOL CopyTextToClipboard(HWND hwnd,const char* text)
6161
lstrcpy(ptrCopy,text);
6262
GlobalUnlock(hglbCopy);
6363

64-
EmptyClipboard();
65-
SetClipboardData(CF_TEXT,hglbCopy);
64+
if(!EmptyClipboard()){
65+
GlobalFree(hglbCopy);
66+
CloseClipboard();
67+
return FALSE;
68+
}
69+
if(SetClipboardData(CF_TEXT,hglbCopy)==NULL){
70+
GlobalFree(hglbCopy);
71+
CloseClipboard();
72+
return FALSE;
73+
}
6674
CloseClipboard();
6775

6876
return TRUE;

0 commit comments

Comments
 (0)