[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:02723] local_dir Bug Fix of xftp-2.2-1
- From: Katsuya Nagai <katsuya@xxxxxxxxx>
- Subject: [debian-users:02723] local_dir Bug Fix of xftp-2.2-1
- Date: Sat, 08 Nov 1997 17:19:28 +0900
- X-fingerprint: BD 8B BC 12 9E 72 EB 27 00 F5 D9 58 45 59 F1 BB
- X-ml-count: 02723
- X-ml-driver: CMLD (Version 2.5)
- X-ml-name: debian-users
- X-url: http://www.kcn.or.jp/~katsuya/
- Message-id: <199711080820.RAA06407@xxxxxxxxxxxxx>
- X-mailer: Mew version 1.70 on Emacs 19.34.1 / Mule 2.3
永井@大和郡山です。
Debian-1.3.1 に含まれている xftp-2.2-1 において、~/.moxftprc に
local_dir を書くと、変な値が表示されます。
本家 Debian の問題でしょうが、英語での Bug Report に尻込みをして
しまっていますので、Debian/JP の ML に投稿致します。
gdb を使いながらソースを調べてみましたところ、wc_hooks.c の中の
Set_Local という関数で、引数の値によっては自分自身の Allocation
を開放して、その開放したアドレスに書かれていた文字列を再割り当て
してしまうことがありました。
添付はその部分の修正パッチです。
--
Katsuya Nagai <katsuya@xxxxxxxxx> URL:http://www.kcn.or.jp/~katsuya/
Private, Nara Prefecture, Japan.
// The hacker isn't the cracker, do you know?
--- moxftp-2.2.orig/wc_hooks.c
+++ moxftp-2.2/wc_hooks.c
@@ -718,10 +718,13 @@
{
char *t = NULL;
- if (local_dir) {
- XtFree(local_dir);
+ if (s != local_dir) {
+ if (local_dir) {
+ XtFree(local_dir);
+ }
+ local_dir = XtNewString(s);
}
- local_dir = XtNewString(s);
+
if( Remote_local == LOCAL) {
SetWidget(Dir_w, "*.dir", 0);
t = concat(t, "Local Directory: ");