Received: (at 19910) by debbugs.gnu.org; 1 Dec 2019 08:22:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 01 03:22:06 2019 Received: from localhost ([127.0.0.1]:35452 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ibKUY-0004v8-0H for submit <at> debbugs.gnu.org; Sun, 01 Dec 2019 03:22:06 -0500 Received: from ted.gofardesign.uk ([67.225.143.91]:58376) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefan@HIDDEN>) id 1ibKUW-0004uc-0v for 19910 <at> debbugs.gnu.org; Sun, 01 Dec 2019 03:22:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=marxist.se; s=default; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=sX5x1dWuqJxn/c6QCnnY3v2J701+oEvaaOy90JkeTFs=; b=nUNB6OXX99pHeym3Bd/CeBayfl axpcV3FfH1lkPINu5hTrSISk4PwEcqOXV7jrMaepaBns/lY+xiNTnvXcsFF7Bof81aRWdjh8ULz+c jI0V2mG+aJYbHSgbKbY1J8rezo1iyWbRJSdv57OOmQ+q5M1NpacRjZJqN2GxNsMfEnPpq1FLUHjEn zZNqGqii81VqFAdy9Tg/g6Hh3gSou5g36aPCoJ57CgPLtI5hKgX0iGqgMFmG8AIem8CtSzJL8FWNs VRywtStKUpNzajPoPAqOlsP9QxuQD3no7oNocY08nWqqJvEJPsZyTjCuA3u3jlXyDcPQoxT+vQixK kbkbeRaQ==; Received: from h-70-69.a785.priv.bahnhof.se ([155.4.70.69]:38210 helo=localhost) by ted.gofardesign.uk with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92) (envelope-from <stefan@HIDDEN>) id 1ibKUQ-001PWj-Dr; Sun, 01 Dec 2019 03:21:58 -0500 From: Stefan Kangas <stefan@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> Subject: Re: bug#19910: 24.4; Japanese font names are decoded incorrectly in Cygwin's emacs-w32 in LANG=ja_JP.UTF-8 In-Reply-To: <83h9ugltg1.fsf@HIDDEN> (Eli Zaretskii's message of "Fri, 20 Feb 2015 13:21:18 +0200") References: <CALus1P=Sf5Z2Bw7ApqDqWJ+va+5Jtar4WiLjbBv_nhjOOLX7nQ@HIDDEN> <83h9ugltg1.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Date: Sun, 01 Dec 2019 09:21:56 +0100 Message-ID: <874kykihgb.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - ted.gofardesign.uk X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - marxist.se X-Get-Message-Sender-Via: ted.gofardesign.uk: authenticated_id: stefan@HIDDEN X-Authenticated-Sender: ted.gofardesign.uk: stefan@HIDDEN X-Source: X-Source-Args: X-Source-Dir: X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 19910 Cc: Fujii Hironori <fujii.hironori@HIDDEN>, 19910 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Eli Zaretskii <eliz@HIDDEN> writes: >> Date: Fri, 20 Feb 2015 19:39:55 +0900 >> From: Fujii Hironori <fujii.hironori@HIDDEN> >> >> (font-family-list) returns incorrectly decoded Japanese font names. >> My locale-coding-system is utf-8-unix. >> >> If I do (setq locale-coding-system 'cp932), it returns correct font names. >> But, locale-coding-system is used in other places (e.g. M-x term and M-x man). >> locale-coding-system must be utf-8 in my Emacs. > > The problem is in w32font.c: it should call the "wide" (a.k.a. > "Unicode") APIs, and then decode strings using utf-16le, like we do in > w32fns.c with encoding strings we pass to w32 GUI APIs. That was 5 years ago. Is any of this still an issue on recent versions of Emacs? Best regards, Stefan Kangas
bug-gnu-emacs@HIDDEN
:bug#19910
; Package emacs
.
Full text available.Received: (at 19910) by debbugs.gnu.org; 28 Feb 2015 12:46:33 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Feb 28 07:46:33 2015 Received: from localhost ([127.0.0.1]:60433 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1YRgmv-00059j-AL for submit <at> debbugs.gnu.org; Sat, 28 Feb 2015 07:46:33 -0500 Received: from mtaout21.012.net.il ([80.179.55.169]:46274) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <eliz@HIDDEN>) id 1YRgms-00059U-3h for 19910 <at> debbugs.gnu.org; Sat, 28 Feb 2015 07:46:31 -0500 Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0NKH00G00FCX3R00@HIDDEN> for 19910 <at> debbugs.gnu.org; Sat, 28 Feb 2015 14:46:22 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NKH00G9ZFHA2D30@HIDDEN>; Sat, 28 Feb 2015 14:46:22 +0200 (IST) Date: Sat, 28 Feb 2015 14:46:19 +0200 From: Eli Zaretskii <eliz@HIDDEN> Subject: Re: bug#19910: 24.4; Japanese font names are decoded incorrectly in Cygwin's emacs-w32 in LANG=ja_JP.UTF-8 In-reply-to: <CALus1PkfjTojw-JqBeHkpg5hSTyo0g9i_VdLb7kqZAcu4EyvLQ@HIDDEN> X-012-Sender: halo1@HIDDEN To: Fujii Hironori <fujii.hironori@HIDDEN> Message-id: <83a8zytd9g.fsf@HIDDEN> References: <CALus1P=Sf5Z2Bw7ApqDqWJ+va+5Jtar4WiLjbBv_nhjOOLX7nQ@HIDDEN> <83h9ugltg1.fsf@HIDDEN> <CALus1Pk81J0O=TYZYP7PwDNb8Qwk3UQ_3Pyw3aYJvO4A8NiAYw@HIDDEN> <83y4nj49zx.fsf@HIDDEN> <CALus1PkfjTojw-JqBeHkpg5hSTyo0g9i_VdLb7kqZAcu4EyvLQ@HIDDEN> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 19910 Cc: 19910 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii <eliz@HIDDEN> List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.0 (+) > Date: Sat, 28 Feb 2015 21:14:00 +0900 > From: Fujii Hironori <fujii.hironori@HIDDEN> > Cc: 19910 <at> debbugs.gnu.org > > > I would actually suggest to have a Cygwin-only branches of the code, > > where you can freely call the "wide" APIs without bothering about > > Windows 9X, since that's what the Cygwin-w32 build does elsewhere, and > > since this is a Cygwin-specific problem due to the difference between > > file-name encoding and the locale emulated by Cygwin. There are a > > bunch of macros like GUI_STR and GUI_ENCODE_FILE near the end of > > w32term.h that can be used to minimize #ifdef's to the absolute > > minimum. > > If this approach is used, structs such as LOGFONT and ENUMLOGFONTEX > should be ranemed to GUI_FN(LOGFONT) and GUI_FN(ENUMLOGFONTEX). > This looks ugly. We use it in quite a few places in Emacs, so ugly or not, this is a kind of de-facto standard for resolving these issues. More importantly, it doesn't run the risk of breaking Emacs on Windows 9X. > The best way to solve this is defining _UNICODE. > Defining _UNICODE is already filed, but closed as wontfix. > > #265 - Build error with _UNICODE on w32. - GNU bug report logs > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=265 > > If Bug#265 is resolved, this bug (Bug#19910) will be resolved automatically. > And, _UNICODE macro can be used not only for Cygwin, but also NTEmacs. Most, if not all, of the issues which could motivate someone to use _UNICODE were meanwhile fixed, so reviving that now makes very little sense. In particular, the native Windows build already uses the Unicode APIs wherever feasible. (The particular issue discussed in this thread doesn't exist in the native build, AFAIU, because DECODE_SYSTEM does its job there.) Thanks.
bug-gnu-emacs@HIDDEN
:bug#19910
; Package emacs
.
Full text available.Received: (at 19910) by debbugs.gnu.org; 28 Feb 2015 12:14:19 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Feb 28 07:14:19 2015 Received: from localhost ([127.0.0.1]:60422 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1YRgHd-000306-Hk for submit <at> debbugs.gnu.org; Sat, 28 Feb 2015 07:14:19 -0500 Received: from mail-lb0-f170.google.com ([209.85.217.170]:44025) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <fujii.hironori@HIDDEN>) id 1YRgHW-0002zP-NJ for 19910 <at> debbugs.gnu.org; Sat, 28 Feb 2015 07:14:11 -0500 Received: by lbiw7 with SMTP id w7so21951044lbi.10 for <19910 <at> debbugs.gnu.org>; Sat, 28 Feb 2015 04:14:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=ivR3eyKg8oCl0IC+7W/oW3P567QG9XxBthKZhcqtYRg=; b=sbh9Zk5vPRKExOtJ9KHJaDitYaKLCrKDWywfTPuXtO2TvX4ix5y9F7Qfi+G2lrTGe1 wYyz4Wd9yG+zvbhvCvxmDDeaH/D2/qgVy2C9HlTyqkX/5/nUC6BmO6uaMQXmmj4FS+xs oV4/Ve+26NdomkhuPbiyVgfw4+IHACPEDaFU+jKor+SrZzyjcztfyU8OEbcBfwa5CL7N Up/eY8XcBSIwcY/dthQLS8UH2s9MdXpfWRL7Ca6Flg+t2uiO9IFxa69MEi1py76OG7ka YbV2i6R13s68QtBGbh/OoJGUew5KhfLL3OsDYp90K/S1S0ARZrr0NMVkedY32fyoPPv5 Q4PA== MIME-Version: 1.0 X-Received: by 10.112.141.225 with SMTP id rr1mr16465203lbb.71.1425125640701; Sat, 28 Feb 2015 04:14:00 -0800 (PST) Received: by 10.112.10.164 with HTTP; Sat, 28 Feb 2015 04:14:00 -0800 (PST) In-Reply-To: <83y4nj49zx.fsf@HIDDEN> References: <CALus1P=Sf5Z2Bw7ApqDqWJ+va+5Jtar4WiLjbBv_nhjOOLX7nQ@HIDDEN> <83h9ugltg1.fsf@HIDDEN> <CALus1Pk81J0O=TYZYP7PwDNb8Qwk3UQ_3Pyw3aYJvO4A8NiAYw@HIDDEN> <83y4nj49zx.fsf@HIDDEN> Date: Sat, 28 Feb 2015 21:14:00 +0900 Message-ID: <CALus1PkfjTojw-JqBeHkpg5hSTyo0g9i_VdLb7kqZAcu4EyvLQ@HIDDEN> Subject: Re: bug#19910: 24.4; Japanese font names are decoded incorrectly in Cygwin's emacs-w32 in LANG=ja_JP.UTF-8 From: Fujii Hironori <fujii.hironori@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 19910 Cc: 19910 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.7 (/) Thank you for reviewing my patch, Eli. On Sat, Feb 28, 2015 at 1:03 AM, Eli Zaretskii <eliz@HIDDEN> wrote: > However, this goes too far: there's no need to replace all the > functions with "wide" versions, only those functions that return font > name strings from the system. For example, I don't think > CreateFontIndirect needs to be switched to Unicode, does it? And CRT > functions like _wcslwr and swprintf that work on wchar_t arguments > aren't supported on Windows 9X, AFAIK, so we cannot call them. (One > reason for using the minimum number of "wide" APIs is that we don't > have good ways of testing the development code on Windows 9X.) This is the code: | 862 hfont = CreateFontIndirect (&logfont); | (...) | 912 = DECODE_SYSTEM (build_string (logfont.lfFaceName)); logfont.lfFaceName is ANSI text and DECODE_SYSTEM is the problem. CreateFontIndirect should be wide. > I would actually suggest to have a Cygwin-only branches of the code, > where you can freely call the "wide" APIs without bothering about > Windows 9X, since that's what the Cygwin-w32 build does elsewhere, and > since this is a Cygwin-specific problem due to the difference between > file-name encoding and the locale emulated by Cygwin. There are a > bunch of macros like GUI_STR and GUI_ENCODE_FILE near the end of > w32term.h that can be used to minimize #ifdef's to the absolute > minimum. If this approach is used, structs such as LOGFONT and ENUMLOGFONTEX should be ranemed to GUI_FN(LOGFONT) and GUI_FN(ENUMLOGFONTEX). This looks ugly. The best way to solve this is defining _UNICODE. Defining _UNICODE is already filed, but closed as wontfix. #265 - Build error with _UNICODE on w32. - GNU bug report logs https://debbugs.gnu.org/cgi/bugreport.cgi?bug=265 If Bug#265 is resolved, this bug (Bug#19910) will be resolved automatically. And, _UNICODE macro can be used not only for Cygwin, but also NTEmacs.
bug-gnu-emacs@HIDDEN
:bug#19910
; Package emacs
.
Full text available.Received: (at 19910) by debbugs.gnu.org; 27 Feb 2015 16:03:38 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 27 11:03:38 2015 Received: from localhost ([127.0.0.1]:60118 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1YRNO5-00066q-SB for submit <at> debbugs.gnu.org; Fri, 27 Feb 2015 11:03:38 -0500 Received: from mtaout21.012.net.il ([80.179.55.169]:51065) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <eliz@HIDDEN>) id 1YRNO3-00066c-LV for 19910 <at> debbugs.gnu.org; Fri, 27 Feb 2015 11:03:37 -0500 Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0NKF00D00TWIGO00@HIDDEN> for 19910 <at> debbugs.gnu.org; Fri, 27 Feb 2015 18:03:28 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NKF00DO3TXSDN80@HIDDEN>; Fri, 27 Feb 2015 18:03:28 +0200 (IST) Date: Fri, 27 Feb 2015 18:03:46 +0200 From: Eli Zaretskii <eliz@HIDDEN> Subject: Re: bug#19910: 24.4; Japanese font names are decoded incorrectly in Cygwin's emacs-w32 in LANG=ja_JP.UTF-8 In-reply-to: <CALus1Pk81J0O=TYZYP7PwDNb8Qwk3UQ_3Pyw3aYJvO4A8NiAYw@HIDDEN> X-012-Sender: halo1@HIDDEN To: Fujii Hironori <fujii.hironori@HIDDEN> Message-id: <83y4nj49zx.fsf@HIDDEN> References: <CALus1P=Sf5Z2Bw7ApqDqWJ+va+5Jtar4WiLjbBv_nhjOOLX7nQ@HIDDEN> <83h9ugltg1.fsf@HIDDEN> <CALus1Pk81J0O=TYZYP7PwDNb8Qwk3UQ_3Pyw3aYJvO4A8NiAYw@HIDDEN> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 19910 Cc: 19910 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii <eliz@HIDDEN> List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.0 (+) > Date: Sat, 28 Feb 2015 00:22:00 +0900 > From: Fujii Hironori <fujii.hironori@HIDDEN> > Cc: 19910 <at> debbugs.gnu.org > > On Fri, Feb 20, 2015 at 8:21 PM, Eli Zaretskii <eliz@HIDDEN> wrote: > > The problem is in w32font.c: it should call the "wide" (a.k.a. > > "Unicode") APIs, and then decode strings using utf-16le, like we do in > > w32fns.c with encoding strings we pass to w32 GUI APIs. > > Unicode API patch is attached. Could you review it? > Should I use GetProcAddress for Windows 9x? Thanks. However, this goes too far: there's no need to replace all the functions with "wide" versions, only those functions that return font name strings from the system. For example, I don't think CreateFontIndirect needs to be switched to Unicode, does it? And CRT functions like _wcslwr and swprintf that work on wchar_t arguments aren't supported on Windows 9X, AFAIK, so we cannot call them. (One reason for using the minimum number of "wide" APIs is that we don't have good ways of testing the development code on Windows 9X.) And yes, for Windows 9X you will need to call these functions through function pointers, after assigning them with GetProcAddress, as w32font.c does elsewhere. I would actually suggest to have a Cygwin-only branches of the code, where you can freely call the "wide" APIs without bothering about Windows 9X, since that's what the Cygwin-w32 build does elsewhere, and since this is a Cygwin-specific problem due to the difference between file-name encoding and the locale emulated by Cygwin. There are a bunch of macros like GUI_STR and GUI_ENCODE_FILE near the end of w32term.h that can be used to minimize #ifdef's to the absolute minimum.
bug-gnu-emacs@HIDDEN
:bug#19910
; Package emacs
.
Full text available.Received: (at 19910) by debbugs.gnu.org; 27 Feb 2015 15:22:13 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 27 10:22:12 2015 Received: from localhost ([127.0.0.1]:60113 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1YRMjz-00059B-0Y for submit <at> debbugs.gnu.org; Fri, 27 Feb 2015 10:22:12 -0500 Received: from mail-lb0-f174.google.com ([209.85.217.174]:38224) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <fujii.hironori@HIDDEN>) id 1YRMju-00058j-Od for 19910 <at> debbugs.gnu.org; Fri, 27 Feb 2015 10:22:08 -0500 Received: by lbiz11 with SMTP id z11so17984477lbi.5 for <19910 <at> debbugs.gnu.org>; Fri, 27 Feb 2015 07:22:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=N6hnlUmpMRsqp+aC1SHJwVP3A3HhOJzHY+0fV8V6jvA=; b=cCbzZnn4WMBymFUqDy5yn36QZWVCBJZSa3qs6cF6pS2b25ejWeBP5Th2lyclnfC9G2 G2L0RMvDh9vxnkWMSC6SMlvLn9Bs4eO/u27Ikps0guALqc1pU3KiywVzthCelH4e3gBL CnGYkN/4t+q5sJCOQIaBU23a6asQ+2zTi2dv3U5Hvrb0X/q3isnRp+UjT+cxbtkugh55 z1A9sTesYNP0CWNCFNWkb3VMy2ayh3BS/2P0Pnfluwirx++GpIu8zr4LTkJU9uiVeusw XRLNd76I0OdvQlnIDIiF8Aol118fUd73INRDjniZgeiL9rblIFjZfjNRIbxUvI6nXAk2 fwNQ== MIME-Version: 1.0 X-Received: by 10.112.12.98 with SMTP id x2mr13035339lbb.3.1425050520744; Fri, 27 Feb 2015 07:22:00 -0800 (PST) Received: by 10.112.10.164 with HTTP; Fri, 27 Feb 2015 07:22:00 -0800 (PST) In-Reply-To: <83h9ugltg1.fsf@HIDDEN> References: <CALus1P=Sf5Z2Bw7ApqDqWJ+va+5Jtar4WiLjbBv_nhjOOLX7nQ@HIDDEN> <83h9ugltg1.fsf@HIDDEN> Date: Sat, 28 Feb 2015 00:22:00 +0900 Message-ID: <CALus1Pk81J0O=TYZYP7PwDNb8Qwk3UQ_3Pyw3aYJvO4A8NiAYw@HIDDEN> Subject: Re: bug#19910: 24.4; Japanese font names are decoded incorrectly in Cygwin's emacs-w32 in LANG=ja_JP.UTF-8 From: Fujii Hironori <fujii.hironori@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> Content-Type: multipart/mixed; boundary=001a11c39ea813ce720510136e60 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 19910 Cc: 19910 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.7 (/) --001a11c39ea813ce720510136e60 Content-Type: text/plain; charset=UTF-8 Tags: patch On Fri, Feb 20, 2015 at 8:21 PM, Eli Zaretskii <eliz@HIDDEN> wrote: > The problem is in w32font.c: it should call the "wide" (a.k.a. > "Unicode") APIs, and then decode strings using utf-16le, like we do in > w32fns.c with encoding strings we pass to w32 GUI APIs. Unicode API patch is attached. Could you review it? Should I use GetProcAddress for Windows 9x? --001a11c39ea813ce720510136e60 Content-Type: text/x-patch; charset=US-ASCII; name="font.patch" Content-Disposition: attachment; filename="font.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_i6nq8wfp0 ZGlmZiAtLWdpdCBhL3NyYy93MzJmb250LmMgYi9zcmMvdzMyZm9udC5jCmluZGV4IDQyMmYwODIu LjYzMWNlY2YgMTAwNjQ0Ci0tLSBhL3NyYy93MzJmb250LmMKKysrIGIvc3JjL3czMmZvbnQuYwpA QCAtMTksNiArMTksNyBAQCBhbG9uZyB3aXRoIEdOVSBFbWFjcy4gIElmIG5vdCwgc2VlIDxodHRw Oi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCiAjaW5jbHVkZSA8Y29uZmlnLmg+CiAjaW5j bHVkZSA8d2luZG93cy5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8d2NoYXIuaD4K ICNpbmNsdWRlIDxtYXRoLmg+CiAjaW5jbHVkZSA8Y3R5cGUuaD4KICNpbmNsdWRlIDxjb21tZGxn Lmg+CkBAIC01NywzNyArNTgsMzcgQEAgYWxvbmcgd2l0aCBHTlUgRW1hY3MuICBJZiBub3QsIHNl ZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLwogI2RlZmluZSBKT0hBQl9DSEFS U0VUIDEzMAogI2VuZGlmCiAKLXN0YXRpYyB2b2lkIGZpbGxfaW5fbG9nZm9udCAoc3RydWN0IGZy YW1lICosIExPR0ZPTlQgKiwgTGlzcF9PYmplY3QpOworc3RhdGljIHZvaWQgZmlsbF9pbl9sb2dm b250IChzdHJ1Y3QgZnJhbWUgKiwgTE9HRk9OVFcgKiwgTGlzcF9PYmplY3QpOwogCiBzdGF0aWMg QllURSB3MzJfYW50aWFsaWFzX3R5cGUgKExpc3BfT2JqZWN0KTsKIHN0YXRpYyBMaXNwX09iamVj dCBsaXNweV9hbnRpYWxpYXNfdHlwZSAoQllURSk7CiAKIHN0YXRpYyBMaXNwX09iamVjdCBmb250 X3N1cHBvcnRlZF9zY3JpcHRzIChGT05UU0lHTkFUVVJFICopOwotc3RhdGljIGludCB3MzJmb250 X2Z1bGxfbmFtZSAoTE9HRk9OVCAqLCBMaXNwX09iamVjdCwgaW50LCBjaGFyICosIGludCk7Citz dGF0aWMgaW50IHczMmZvbnRfZnVsbF9uYW1lIChMT0dGT05UVyAqLCBMaXNwX09iamVjdCwgaW50 LCB3Y2hhcl90ICosIGludCk7CiBzdGF0aWMgdm9pZCBjb21wdXRlX21ldHJpY3MgKEhEQywgc3Ry dWN0IHczMmZvbnRfaW5mbyAqLCB1bnNpZ25lZCBpbnQsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHN0cnVjdCB3MzJfbWV0cmljX2NhY2hlICopOwogCiBzdGF0aWMgTGlzcF9PYmplY3Qg dzMyX3JlZ2lzdHJ5IChMT05HLCBEV09SRCk7CiAKLS8qIEVudW1Gb250RmFtaWxpZXNFeCBjYWxs YmFja3MuICAqLwotc3RhdGljIGludCBDQUxMQkFDSyBBTElHTl9TVEFDSyBhZGRfZm9udF9lbnRp dHlfdG9fbGlzdCAoRU5VTUxPR0ZPTlRFWCAqLAotCQkJCQkJCSBORVdURVhUTUVUUklDRVggKiwK Ky8qIEVudW1Gb250RmFtaWxpZXNFeFcgY2FsbGJhY2tzLiAgKi8KK3N0YXRpYyBpbnQgQ0FMTEJB Q0sgQUxJR05fU1RBQ0sgYWRkX2ZvbnRfZW50aXR5X3RvX2xpc3QgKEVOVU1MT0dGT05URVhXICos CisJCQkJCQkJIE5FV1RFWFRNRVRSSUNFWFcgKiwKIAkJCQkJCQkgRFdPUkQsIExQQVJBTSk7Ci1z dGF0aWMgaW50IENBTExCQUNLIEFMSUdOX1NUQUNLIGFkZF9vbmVfZm9udF9lbnRpdHlfdG9fbGlz dCAoRU5VTUxPR0ZPTlRFWCAqLAotCQkJCQkJCSAgICAgTkVXVEVYVE1FVFJJQ0VYICosCitzdGF0 aWMgaW50IENBTExCQUNLIEFMSUdOX1NUQUNLIGFkZF9vbmVfZm9udF9lbnRpdHlfdG9fbGlzdCAo RU5VTUxPR0ZPTlRFWFcgKiwKKwkJCQkJCQkgICAgIE5FV1RFWFRNRVRSSUNFWFcgKiwKIAkJCQkJ CQkgICAgIERXT1JELCBMUEFSQU0pOwotc3RhdGljIGludCBDQUxMQkFDSyBBTElHTl9TVEFDSyBh ZGRfZm9udF9uYW1lX3RvX2xpc3QgKEVOVU1MT0dGT05URVggKiwKLQkJCQkJCSAgICAgICBORVdU RVhUTUVUUklDRVggKiwKK3N0YXRpYyBpbnQgQ0FMTEJBQ0sgQUxJR05fU1RBQ0sgYWRkX2ZvbnRf bmFtZV90b19saXN0IChFTlVNTE9HRk9OVEVYVyAqLAorCQkJCQkJICAgICAgIE5FV1RFWFRNRVRS SUNFWFcgKiwKIAkJCQkJCSAgICAgICBEV09SRCwgTFBBUkFNKTsKIAotLyogc3RydWN0IHBhc3Nl ZCBpbiBhcyBMUEFSQU0gYXJnIHRvIEVudW1Gb250RmFtaWxpZXNFeCwgZm9yIGtlZXBpbmcgdHJh Y2sKKy8qIHN0cnVjdCBwYXNzZWQgaW4gYXMgTFBBUkFNIGFyZyB0byBFbnVtRm9udEZhbWlsaWVz RXhXLCBmb3Iga2VlcGluZyB0cmFjawogICAgb2Ygd2hhdCB3ZSByZWFsbHkgd2FudC4gICovCiBz dHJ1Y3QgZm9udF9jYWxsYmFja19kYXRhCiB7Ci0gIC8qIFRoZSBsb2dmb250IHdlIGFyZSBtYXRj aGluZyBhZ2FpbnN0LiBFbnVtRm9udEZhbWlsaWVzRXggb25seSBtYXRjaGVzCisgIC8qIFRoZSBs b2dmb250IHdlIGFyZSBtYXRjaGluZyBhZ2FpbnN0LiBFbnVtRm9udEZhbWlsaWVzRXhXIG9ubHkg bWF0Y2hlcwogICAgICBmYWNlIG5hbWUgYW5kIGNoYXJzZXQsIHNvIHdlIG5lZWQgdG8gbWFudWFs bHkgbWF0Y2ggZXZlcnl0aGluZyBlbHNlCiAgICAgIGluIHRoZSBjYWxsYmFjayBmdW5jdGlvbi4g ICovCi0gIExPR0ZPTlQgcGF0dGVybjsKKyAgTE9HRk9OVFcgcGF0dGVybjsKICAgLyogVGhlIG9y aWdpbmFsIGZvbnQgc3BlYyBvciBlbnRpdHkuICAqLwogICBMaXNwX09iamVjdCBvcmlnX2ZvbnRf c3BlYzsKICAgLyogVGhlIGZyYW1lIHRoZSBmb250IGlzIGJlaW5nIGxvYWRlZCBvbi4gICovCkBA IC05OCw3ICs5OSw3IEBAIHN0cnVjdCBmb250X2NhbGxiYWNrX2RhdGEKICAgYm9vbCBvcGVudHlw ZV9vbmx5OwogfTsKIAotLyogSGFuZGxlcyB0aGUgcHJvYmxlbSB0aGF0IEVudW1Gb250RmFtaWxp ZXNFeCB3aWxsIG5vdCByZXR1cm4gYWxsCisvKiBIYW5kbGVzIHRoZSBwcm9ibGVtIHRoYXQgRW51 bUZvbnRGYW1pbGllc0V4VyB3aWxsIG5vdCByZXR1cm4gYWxsCiAgICBzdHlsZSB2YXJpYXRpb25z IGlmIHRoZSBmb250IG5hbWUgaXMgbm90IHNwZWNpZmllZC4gICovCiBzdGF0aWMgdm9pZCBsaXN0 X2FsbF9tYXRjaGluZ19mb250cyAoc3RydWN0IGZvbnRfY2FsbGJhY2tfZGF0YSAqKTsKIApAQCAt MjM5LDkgKzI0MCw5IEBAIG1lbXFfbm9fcXVpdCAoTGlzcF9PYmplY3QgZWx0LCBMaXNwX09iamVj dCBsaXN0KQogfQogCiBMaXNwX09iamVjdAotaW50ZXJuX2ZvbnRfbmFtZSAoY2hhciAqIHN0cmlu ZykKK2ludGVybl9mb250X25hbWUgKHdjaGFyX3QgKiBzdHJpbmcpCiB7Ci0gIExpc3BfT2JqZWN0 IHN0ciA9IERFQ09ERV9TWVNURU0gKGJ1aWxkX3N0cmluZyAoc3RyaW5nKSk7CisgIExpc3BfT2Jq ZWN0IHN0ciA9IGZyb21fdW5pY29kZV9idWZmZXIgKHN0cmluZyk7CiAgIHB0cmRpZmZfdCBsZW4g PSBTQ0hBUlMgKHN0cik7CiAgIExpc3BfT2JqZWN0IG9iYXJyYXkgPSBjaGVja19vYmFycmF5IChW b2JhcnJheSk7CiAgIExpc3BfT2JqZWN0IHRlbSA9IG9ibG9va3VwIChvYmFycmF5LCBTREFUQSAo c3RyKSwgbGVuLCBsZW4pOwpAQCAtMjkxLDcgKzI5Miw3IEBAIHN0YXRpYyBMaXNwX09iamVjdAog dzMyZm9udF9saXN0X2ZhbWlseSAoc3RydWN0IGZyYW1lICpmKQogewogICBMaXNwX09iamVjdCBs aXN0ID0gUW5pbDsKLSAgTE9HRk9OVCBmb250X21hdGNoX3BhdHRlcm47CisgIExPR0ZPTlRXIGZv bnRfbWF0Y2hfcGF0dGVybjsKICAgSERDIGRjOwogCiAgIG1lbXNldCAoJmZvbnRfbWF0Y2hfcGF0 dGVybiwgMCwgc2l6ZW9mIChmb250X21hdGNoX3BhdHRlcm4pKTsKQEAgLTI5OSw5ICszMDAsOSBA QCB3MzJmb250X2xpc3RfZmFtaWx5IChzdHJ1Y3QgZnJhbWUgKmYpCiAKICAgZGMgPSBnZXRfZnJh bWVfZGMgKGYpOwogCi0gIEVudW1Gb250RmFtaWxpZXNFeCAoZGMsICZmb250X21hdGNoX3BhdHRl cm4sCi0gICAgICAgICAgICAgICAgICAgICAgKEZPTlRFTlVNUFJPQykgYWRkX2ZvbnRfbmFtZV90 b19saXN0LAotICAgICAgICAgICAgICAgICAgICAgIChMUEFSQU0pICZsaXN0LCAwKTsKKyAgRW51 bUZvbnRGYW1pbGllc0V4VyAoZGMsICZmb250X21hdGNoX3BhdHRlcm4sCisJCSAgICAgICAoRk9O VEVOVU1QUk9DVykgYWRkX2ZvbnRfbmFtZV90b19saXN0LAorCQkgICAgICAgKExQQVJBTSkgJmxp c3QsIDApOwogICByZWxlYXNlX2ZyYW1lX2RjIChmLCBkYyk7CiAKICAgcmV0dXJuIGxpc3Q7CkBA IC03NTYsNyArNzU3LDcgQEAgdzMyZm9udF9saXN0X2ludGVybmFsIChzdHJ1Y3QgZnJhbWUgKmYs IExpc3BfT2JqZWN0IGZvbnRfc3BlYywKICAgbWF0Y2hfZGF0YS5saXN0ID0gUW5pbDsKICAgWFNF VEZSQU1FIChtYXRjaF9kYXRhLmZyYW1lLCBmKTsKIAotICBtZW1zZXQgKCZtYXRjaF9kYXRhLnBh dHRlcm4sIDAsIHNpemVvZiAoTE9HRk9OVCkpOworICBtZW1zZXQgKCZtYXRjaF9kYXRhLnBhdHRl cm4sIDAsIHNpemVvZiAoTE9HRk9OVFcpKTsKICAgZmlsbF9pbl9sb2dmb250IChmLCAmbWF0Y2hf ZGF0YS5wYXR0ZXJuLCBmb250X3NwZWMpOwogCiAgIC8qIElmIHRoZSBjaGFyc2V0IGlzIHVucmVj b2duaXplZCwgdGhlbiB3ZSB3b24ndCBmaW5kIGEgZm9udCwgc28gZG9uJ3QKQEAgLTc3Niw5ICs3 NzcsOSBAQCB3MzJmb250X2xpc3RfaW50ZXJuYWwgKHN0cnVjdCBmcmFtZSAqZiwgTGlzcF9PYmpl Y3QgZm9udF9zcGVjLAogICBpZiAob3BlbnR5cGVfb25seSkKICAgICBtYXRjaF9kYXRhLnBhdHRl cm4ubGZPdXRQcmVjaXNpb24gPSBPVVRfT1VUTElORV9QUkVDSVM7CiAKLSAgaWYgKG1hdGNoX2Rh dGEucGF0dGVybi5sZkZhY2VOYW1lWzBdID09ICdcMCcpCisgIGlmIChtYXRjaF9kYXRhLnBhdHRl cm4ubGZGYWNlTmFtZVswXSA9PSBMJ1wwJykKICAgICB7Ci0gICAgICAvKiBFbnVtRm9udEZhbWls aWVzRXggZG9lcyBub3QgdGFrZSBvdGhlciBmaWVsZHMgaW50byBhY2NvdW50IGlmCisgICAgICAv KiBFbnVtRm9udEZhbWlsaWVzRXhXIGRvZXMgbm90IHRha2Ugb3RoZXIgZmllbGRzIGludG8gYWNj b3VudCBpZgogICAgICAgICAgZm9udCBuYW1lIGlzIGJsYW5rLCBzbyBuZWVkIHRvIHVzZSB0d28g cGFzc2VzLiAgKi8KICAgICAgIGxpc3RfYWxsX21hdGNoaW5nX2ZvbnRzICgmbWF0Y2hfZGF0YSk7 CiAgICAgfQpAQCAtNzg2LDkgKzc4Nyw5IEBAIHczMmZvbnRfbGlzdF9pbnRlcm5hbCAoc3RydWN0 IGZyYW1lICpmLCBMaXNwX09iamVjdCBmb250X3NwZWMsCiAgICAgewogICAgICAgZGMgPSBnZXRf ZnJhbWVfZGMgKGYpOwogCi0gICAgICBFbnVtRm9udEZhbWlsaWVzRXggKGRjLCAmbWF0Y2hfZGF0 YS5wYXR0ZXJuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAoRk9OVEVOVU1QUk9DKSBhZGRf Zm9udF9lbnRpdHlfdG9fbGlzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgKExQQVJBTSkg Jm1hdGNoX2RhdGEsIDApOworICAgICAgRW51bUZvbnRGYW1pbGllc0V4VyAoZGMsICZtYXRjaF9k YXRhLnBhdHRlcm4sCisJCQkgICAoRk9OVEVOVU1QUk9DVykgYWRkX2ZvbnRfZW50aXR5X3RvX2xp c3QsCisJCQkgICAoTFBBUkFNKSAmbWF0Y2hfZGF0YSwgMCk7CiAgICAgICByZWxlYXNlX2ZyYW1l X2RjIChmLCBkYyk7CiAgICAgfQogCkBAIC04MDksNyArODEwLDcgQEAgdzMyZm9udF9tYXRjaF9p bnRlcm5hbCAoc3RydWN0IGZyYW1lICpmLCBMaXNwX09iamVjdCBmb250X3NwZWMsCiAgIFhTRVRG UkFNRSAobWF0Y2hfZGF0YS5mcmFtZSwgZik7CiAgIG1hdGNoX2RhdGEubGlzdCA9IFFuaWw7CiAK LSAgbWVtc2V0ICgmbWF0Y2hfZGF0YS5wYXR0ZXJuLCAwLCBzaXplb2YgKExPR0ZPTlQpKTsKKyAg bWVtc2V0ICgmbWF0Y2hfZGF0YS5wYXR0ZXJuLCAwLCBzaXplb2YgKExPR0ZPTlRXKSk7CiAgIGZp bGxfaW5fbG9nZm9udCAoZiwgJm1hdGNoX2RhdGEucGF0dGVybiwgZm9udF9zcGVjKTsKIAogICBt YXRjaF9kYXRhLm9wZW50eXBlX29ubHkgPSBvcGVudHlwZV9vbmx5OwpAQCAtODE4LDkgKzgxOSw5 IEBAIHczMmZvbnRfbWF0Y2hfaW50ZXJuYWwgKHN0cnVjdCBmcmFtZSAqZiwgTGlzcF9PYmplY3Qg Zm9udF9zcGVjLAogCiAgIGRjID0gZ2V0X2ZyYW1lX2RjIChmKTsKIAotICBFbnVtRm9udEZhbWls aWVzRXggKGRjLCAmbWF0Y2hfZGF0YS5wYXR0ZXJuLAotICAgICAgICAgICAgICAgICAgICAgIChG T05URU5VTVBST0MpIGFkZF9vbmVfZm9udF9lbnRpdHlfdG9fbGlzdCwKLSAgICAgICAgICAgICAg ICAgICAgICAoTFBBUkFNKSAmbWF0Y2hfZGF0YSwgMCk7CisgIEVudW1Gb250RmFtaWxpZXNFeFcg KGRjLCAmbWF0Y2hfZGF0YS5wYXR0ZXJuLAorCQkgICAgICAgKEZPTlRFTlVNUFJPQ1cpIGFkZF9v bmVfZm9udF9lbnRpdHlfdG9fbGlzdCwKKwkJICAgICAgIChMUEFSQU0pICZtYXRjaF9kYXRhLCAw KTsKICAgcmVsZWFzZV9mcmFtZV9kYyAoZiwgZGMpOwogCiAgIHJldHVybiBOSUxQIChtYXRjaF9k YXRhLmxpc3QpID8gUW5pbCA6IFhDQVIgKG1hdGNoX2RhdGEubGlzdCk7CkBAIC04MzEsNyArODMy LDcgQEAgdzMyZm9udF9vcGVuX2ludGVybmFsIChzdHJ1Y3QgZnJhbWUgKmYsIExpc3BfT2JqZWN0 IGZvbnRfZW50aXR5LAogCQkgICAgICAgaW50IHBpeGVsX3NpemUsIExpc3BfT2JqZWN0IGZvbnRf b2JqZWN0KQogewogICBpbnQgbGVuLCBzaXplOwotICBMT0dGT05UIGxvZ2ZvbnQ7CisgIExPR0ZP TlRXIGxvZ2ZvbnQ7CiAgIEhEQyBkYzsKICAgSEZPTlQgaGZvbnQsIG9sZF9mb250OwogICBMaXNw X09iamVjdCB2YWw7CkBAIC04NTksNyArODYwLDcgQEAgdzMyZm9udF9vcGVuX2ludGVybmFsIChz dHJ1Y3QgZnJhbWUgKmYsIExpc3BfT2JqZWN0IGZvbnRfZW50aXR5LAogICAgIHNpemUgPSBwaXhl bF9zaXplOwogCiAgIGxvZ2ZvbnQubGZIZWlnaHQgPSAtc2l6ZTsKLSAgaGZvbnQgPSBDcmVhdGVG b250SW5kaXJlY3QgKCZsb2dmb250KTsKKyAgaGZvbnQgPSBDcmVhdGVGb250SW5kaXJlY3RXICgm bG9nZm9udCk7CiAKICAgaWYgKGhmb250ID09IE5VTEwpCiAgICAgcmV0dXJuIDA7CkBAIC04OTIs MjQgKzg5MywyNCBAQCB3MzJmb250X29wZW5faW50ZXJuYWwgKHN0cnVjdCBmcmFtZSAqZiwgTGlz cF9PYmplY3QgZm9udF9lbnRpdHksCiAgIHczMl9mb250LT5oZm9udCA9IGhmb250OwogCiAgIHsK LSAgICBjaGFyICpuYW1lOworICAgIHdjaGFyX3QgKm5hbWU7CiAKICAgICAvKiBXZSBkb24ndCBr bm93IGhvdyBtdWNoIHNwYWNlIHdlIG5lZWQgZm9yIHRoZSBmdWxsIG5hbWUsIHNvIHN0YXJ0IHdp dGgKLSAgICAgICA5NiBieXRlcyBhbmQgZ28gdXAgaW4gc3RlcHMgb2YgMzIuICAqLworICAgICAg IDk2IGNoYXJhY3RlcnMgYW5kIGdvIHVwIGluIHN0ZXBzIG9mIDMyLiAgKi8KICAgICBsZW4gPSA5 NjsKLSAgICBuYW1lID0gYWxsb2NhIChsZW4pOworICAgIG5hbWUgPSBhbGxvY2EgKGxlbiAqIHNp emVvZiAod2NoYXJfdCkpOwogICAgIHdoaWxlIChuYW1lICYmIHczMmZvbnRfZnVsbF9uYW1lICgm bG9nZm9udCwgZm9udF9lbnRpdHksIHBpeGVsX3NpemUsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG5hbWUsIGxlbikgPCAwKQogICAgICAgewogICAgICAgICBsZW4gKz0g MzI7Ci0gICAgICAgIG5hbWUgPSBhbGxvY2EgKGxlbik7CisgICAgICAgIG5hbWUgPSBhbGxvY2Eg KGxlbiAqIHNpemVvZiAod2NoYXJfdCkpOwogICAgICAgfQogICAgIGlmIChuYW1lKQogICAgICAg Zm9udC0+cHJvcHNbRk9OVF9GVUxMTkFNRV9JTkRFWF0KLSAgICAgICAgPSBERUNPREVfU1lTVEVN IChidWlsZF9zdHJpbmcgKG5hbWUpKTsKKyAgICAgICAgPSBmcm9tX3VuaWNvZGVfYnVmZmVyIChu YW1lKTsKICAgICBlbHNlCiAgICAgICBmb250LT5wcm9wc1tGT05UX0ZVTExOQU1FX0lOREVYXQot CT0gREVDT0RFX1NZU1RFTSAoYnVpbGRfc3RyaW5nIChsb2dmb250LmxmRmFjZU5hbWUpKTsKKwk9 IGZyb21fdW5pY29kZV9idWZmZXIgKGxvZ2ZvbnQubGZGYWNlTmFtZSk7CiAgIH0KIAogICBmb250 LT5tYXhfd2lkdGggPSB3MzJfZm9udC0+bWV0cmljcy50bU1heENoYXJXaWR0aDsKQEAgLTk1NSwx OCArOTU2LDE4IEBAIHczMmZvbnRfb3Blbl9pbnRlcm5hbCAoc3RydWN0IGZyYW1lICpmLCBMaXNw X09iamVjdCBmb250X2VudGl0eSwKICAgcmV0dXJuIDE7CiB9CiAKLS8qIENhbGxiYWNrIGZ1bmN0 aW9uIGZvciBFbnVtRm9udEZhbWlsaWVzRXguCisvKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgRW51 bUZvbnRGYW1pbGllc0V4Vy4KICAqIEFkZHMgdGhlIG5hbWUgb2YgYSBmb250IHRvIGEgTGlzcCBs aXN0IChwYXNzZWQgaW4gYXMgdGhlIGxQYXJhbSBhcmcpLiAgKi8KIHN0YXRpYyBpbnQgQ0FMTEJB Q0sgQUxJR05fU1RBQ0sKLWFkZF9mb250X25hbWVfdG9fbGlzdCAoRU5VTUxPR0ZPTlRFWCAqbG9n aWNhbF9mb250LAotCQkgICAgICAgTkVXVEVYVE1FVFJJQ0VYICpwaHlzaWNhbF9mb250LAorYWRk X2ZvbnRfbmFtZV90b19saXN0IChFTlVNTE9HRk9OVEVYVyAqbG9naWNhbF9mb250LAorCQkgICAg ICAgTkVXVEVYVE1FVFJJQ0VYVyAqcGh5c2ljYWxfZm9udCwKIAkJICAgICAgIERXT1JEIGZvbnRf dHlwZSwgTFBBUkFNIGxpc3Rfb2JqZWN0KQogewogICBMaXNwX09iamVjdCogbGlzdCA9IChMaXNw X09iamVjdCAqKSBsaXN0X29iamVjdDsKICAgTGlzcF9PYmplY3QgZmFtaWx5OwogCiAgIC8qIFNr aXAgdmVydGljYWwgZm9udHMgKGludGVuZGVkIG9ubHkgZm9yIHByaW50aW5nKSAgKi8KLSAgaWYg KGxvZ2ljYWxfZm9udC0+ZWxmTG9nRm9udC5sZkZhY2VOYW1lWzBdID09ICdAJykKKyAgaWYgKGxv Z2ljYWxfZm9udC0+ZWxmTG9nRm9udC5sZkZhY2VOYW1lWzBdID09IEwnQCcpCiAgICAgcmV0dXJu IDE7CiAKICAgZmFtaWx5ID0gaW50ZXJuX2ZvbnRfbmFtZSAobG9naWNhbF9mb250LT5lbGZMb2dG b250LmxmRmFjZU5hbWUpOwpAQCAtOTgyLDE0ICs5ODMsMTQgQEAgc3RhdGljIGludCB3MzJfZW5j b2RlX3dlaWdodCAoaW50KTsKIC8qIENvbnZlcnQgYW4gZW51bWVyYXRlZCBXaW5kb3dzIGZvbnQg dG8gYW4gRW1hY3MgZm9udCBlbnRpdHkuICAqLwogc3RhdGljIExpc3BfT2JqZWN0CiB3MzJfZW51 bWZvbnRfcGF0dGVybl9lbnRpdHkgKExpc3BfT2JqZWN0IGZyYW1lLAotCQkJICAgICBFTlVNTE9H Rk9OVEVYICpsb2dpY2FsX2ZvbnQsCi0JCQkgICAgIE5FV1RFWFRNRVRSSUNFWCAqcGh5c2ljYWxf Zm9udCwKKwkJCSAgICAgRU5VTUxPR0ZPTlRFWFcgKmxvZ2ljYWxfZm9udCwKKwkJCSAgICAgTkVX VEVYVE1FVFJJQ0VYVyAqcGh5c2ljYWxfZm9udCwKIAkJCSAgICAgRFdPUkQgZm9udF90eXBlLAot CQkJICAgICBMT0dGT05UICpyZXF1ZXN0ZWRfZm9udCwKKwkJCSAgICAgTE9HRk9OVFcgKnJlcXVl c3RlZF9mb250LAogCQkJICAgICBMaXNwX09iamVjdCBiYWNrZW5kKQogewogICBMaXNwX09iamVj dCBlbnRpdHksIHRlbTsKLSAgTE9HRk9OVCAqbGYgPSAoTE9HRk9OVCopIGxvZ2ljYWxfZm9udDsK KyAgTE9HRk9OVFcgKmxmID0gKExPR0ZPTlRXKikgbG9naWNhbF9mb250OwogICBCWVRFIGdlbmVy aWNfdHlwZTsKICAgRFdPUkQgZnVsbF90eXBlID0gcGh5c2ljYWxfZm9udC0+bnRtVG0ubnRtRmxh Z3M7CiAKQEAgLTExMTAsNyArMTExMSw3IEBAIHczMl9nZW5lcmljX2ZhbWlseSAoTGlzcF9PYmpl Y3QgbmFtZSkKIH0KIAogc3RhdGljIGludAotbG9nZm9udHNfbWF0Y2ggKExPR0ZPTlQgKmZvbnQs IExPR0ZPTlQgKnBhdHRlcm4pCitsb2dmb250c19tYXRjaCAoTE9HRk9OVFcgKmZvbnQsIExPR0ZP TlRXICpwYXR0ZXJuKQogewogICAvKiBPbmx5IGNoZWNrIGhlaWdodCBmb3IgcmFzdGVyIGZvbnRz LiAgKi8KICAgaWYgKHBhdHRlcm4tPmxmSGVpZ2h0ICYmIGZvbnQtPmxmT3V0UHJlY2lzaW9uID09 IE9VVF9TVFJJTkdfUFJFQ0lTCkBAIC0xMTM0LDkgKzExMzUsOSBAQCBsb2dmb250c19tYXRjaCAo TE9HRk9OVCAqZm9udCwgTE9HRk9OVCAqcGF0dGVybikKICNkZWZpbmUgQ1NCX0NISU5FU0UgKCgx IDw8IDE4KSB8ICgxIDw8IDIwKSkKIAogc3RhdGljIGludAotZm9udF9tYXRjaGVzX3NwZWMgKERX T1JEIHR5cGUsIE5FV1RFWFRNRVRSSUNFWCAqZm9udCwKK2ZvbnRfbWF0Y2hlc19zcGVjIChEV09S RCB0eXBlLCBORVdURVhUTUVUUklDRVhXICpmb250LAogCQkgICBMaXNwX09iamVjdCBzcGVjLCBM aXNwX09iamVjdCBiYWNrZW5kLAotCQkgICBMT0dGT05UICpsb2dmb250KQorCQkgICBMT0dGT05U VyAqbG9nZm9udCkKIHsKICAgTGlzcF9PYmplY3QgZXh0cmEsIHZhbDsKIApAQCAtMTM1NCwxNCAr MTM1NSwxNiBAQCB3MzJmb250X2NvdmVyYWdlX29rIChGT05UU0lHTkFUVVJFICogY292ZXJhZ2Us IEJZVEUgY2hhcnNldCkKICAgcmV0dXJuIDE7CiB9CiAKLSNpZm5kZWYgV0lORE9XU05UCi0jZGVm aW5lIF9zdHJsd3Igc3RybHdyCisjaWZkZWYgV0lORE9XU05UCisjZGVmaW5lIHh3Y3Nsd3IgX3dj c2x3cgorI2Vsc2UKKyNkZWZpbmUgeHdjc2x3ciBDaGFyTG93ZXJXCiAjZW5kaWYgLyogIVdJTkRP V1NOVCAqLwogCiBzdGF0aWMgaW50Ci1jaGVja19mYWNlX25hbWUgKExPR0ZPTlQgKmZvbnQsIGNo YXIgKmZ1bGxfbmFtZSkKK2NoZWNrX2ZhY2VfbmFtZSAoTE9HRk9OVFcgKmZvbnQsIHdjaGFyX3Qg KmZ1bGxfbmFtZSkKIHsKLSAgY2hhciBmdWxsX2luYW1lW0xGX0ZVTExGQUNFU0laRSsxXTsKKyAg d2NoYXJfdCBmdWxsX2luYW1lW0xGX0ZVTExGQUNFU0laRSsxXTsKIAogICAvKiBKdXN0IGNoZWNr IGZvciBuYW1lcyBrbm93biB0byBjYXVzZSBwcm9ibGVtcywgc2luY2UgdGhlIGZ1bGwgbmFtZQog ICAgICBjYW4gY29udGFpbiBleHBhbmRlZCBhYmJyZXZpYXRpb25zLCBwcmVmaXhlZCBmb3VuZHJ5 LCBwb3N0Zml4ZWQKQEAgLTEzNzMsMzkgKzEzNzYsMzkgQEAgY2hlY2tfZmFjZV9uYW1lIChMT0dG T05UICpmb250LCBjaGFyICpmdWxsX25hbWUpCiAgICAgIHRvIGF2b2lkIG5vbi10cnVldHlwZSBm b250cywgYW5kIGVuZHMgdXAgbWl4aW5nIHRoZSBUeXBlLTEgSGVsdmV0aWNhCiAgICAgIHdpdGgg QXJpYWwncyBjaGFyYWN0ZXJpc3RpY3MsIHNpbmNlIHRoYXQgYXR0ZW1wdCB0byB1c2UgVHJ1ZVR5 cGUgd29ya3MKICAgICAgc29tZSBwbGFjZXMsIGJ1dCBub3Qgb3RoZXJzLiAgKi8KLSAgaWYgKCF4 c3RyY2FzZWNtcCAoZm9udC0+bGZGYWNlTmFtZSwgImhlbHZldGljYSIpKQorICBpZiAoIWxzdHJj bXBpVyAoZm9udC0+bGZGYWNlTmFtZSwgTCJoZWx2ZXRpY2EiKSkKICAgICB7Ci0gICAgICBzdHJu Y3B5IChmdWxsX2luYW1lLCBmdWxsX25hbWUsIExGX0ZVTExGQUNFU0laRSk7CisgICAgICBsc3Ry Y3B5blcgKGZ1bGxfaW5hbWUsIGZ1bGxfbmFtZSwgTEZfRlVMTEZBQ0VTSVpFKTsKICAgICAgIGZ1 bGxfaW5hbWVbTEZfRlVMTEZBQ0VTSVpFXSA9IDA7Ci0gICAgICBfc3RybHdyIChmdWxsX2luYW1l KTsKLSAgICAgIHJldHVybiBzdHJzdHIgKCJoZWx2ZXRpY2EiLCBmdWxsX2luYW1lKSAhPSBOVUxM OworICAgICAgeHdjc2x3ciAoZnVsbF9pbmFtZSk7CisgICAgICByZXR1cm4gd2Nzc3RyIChMImhl bHZldGljYSIsIGZ1bGxfaW5hbWUpICE9IE5VTEw7CiAgICAgfQogICAvKiBTYW1lIGZvciBIZWx2 LiAgKi8KLSAgaWYgKCF4c3RyY2FzZWNtcCAoZm9udC0+bGZGYWNlTmFtZSwgImhlbHYiKSkKKyAg aWYgKCFsc3RyY21waVcgKGZvbnQtPmxmRmFjZU5hbWUsIEwiaGVsdiIpKQogICAgIHsKLSAgICAg IHN0cm5jcHkgKGZ1bGxfaW5hbWUsIGZ1bGxfbmFtZSwgTEZfRlVMTEZBQ0VTSVpFKTsKKyAgICAg IGxzdHJjcHluVyAoZnVsbF9pbmFtZSwgZnVsbF9uYW1lLCBMRl9GVUxMRkFDRVNJWkUpOwogICAg ICAgZnVsbF9pbmFtZVtMRl9GVUxMRkFDRVNJWkVdID0gMDsKLSAgICAgIF9zdHJsd3IgKGZ1bGxf aW5hbWUpOwotICAgICAgcmV0dXJuIHN0cnN0ciAoImhlbHYiLCBmdWxsX2luYW1lKSAhPSBOVUxM OworICAgICAgeHdjc2x3ciAoZnVsbF9pbmFtZSk7CisgICAgICByZXR1cm4gd2Nzc3RyIChMImhl bHYiLCBmdWxsX2luYW1lKSAhPSBOVUxMOwogICAgIH0KIAogICAvKiBTaW5jZSBUaW1lcyBpcyBt YXBwZWQgdG8gVGltZXMgTmV3IFJvbWFuLCBhIHN1YnN0cmluZwogICAgICBtYXRjaCBpcyBub3Qg c3VmZmljaWVudCB0byBmaWx0ZXIgb3V0IHRoZSBib2d1cyBtYXRjaC4gICovCi0gIGVsc2UgaWYg KCF4c3RyY2FzZWNtcCAoZm9udC0+bGZGYWNlTmFtZSwgInRpbWVzIikpCi0gICAgcmV0dXJuIHhz dHJjYXNlY21wIChmdWxsX25hbWUsICJ0aW1lcyIpID09IDA7CisgIGVsc2UgaWYgKCFsc3RyY21w aVcgKGZvbnQtPmxmRmFjZU5hbWUsIEwidGltZXMiKSkKKyAgICByZXR1cm4gbHN0cmNtcGlXIChm dWxsX25hbWUsIEwidGltZXMiKSA9PSAwOwogCiAgIHJldHVybiAxOwogfQogCiAKLS8qIENhbGxi YWNrIGZ1bmN0aW9uIGZvciBFbnVtRm9udEZhbWlsaWVzRXguCisvKiBDYWxsYmFjayBmdW5jdGlv biBmb3IgRW51bUZvbnRGYW1pbGllc0V4Vy4KICAqIENoZWNrcyBpZiBhIGZvbnQgbWF0Y2hlcyBl dmVyeXRoaW5nIHdlIGFyZSB0cnlpbmcgdG8gY2hlY2sgYWdhaW5zdCwKICAqIGFuZCBpZiBzbywg YWRkcyBpdCB0byBhIGxpc3QuIEJvdGggdGhlIGRhdGEgd2UgYXJlIGNoZWNraW5nIGFnYWluc3QK ICAqIGFuZCB0aGUgbGlzdCB0byB3aGljaCB0aGUgZm9udHMgYXJlIGFkZGVkIGFyZSBwYXNzZWQg aW4gdmlhIHRoZQogICogbHBhcmFtIGFyZ3VtZW50LCBpbiB0aGUgZm9ybSBvZiBhIGZvbnRfY2Fs bGJhY2tfZGF0YSBzdHJ1Y3QuICovCiBzdGF0aWMgaW50IENBTExCQUNLIEFMSUdOX1NUQUNLCi1h ZGRfZm9udF9lbnRpdHlfdG9fbGlzdCAoRU5VTUxPR0ZPTlRFWCAqbG9naWNhbF9mb250LAotCQkJ IE5FV1RFWFRNRVRSSUNFWCAqcGh5c2ljYWxfZm9udCwKK2FkZF9mb250X2VudGl0eV90b19saXN0 IChFTlVNTE9HRk9OVEVYVyAqbG9naWNhbF9mb250LAorCQkJIE5FV1RFWFRNRVRSSUNFWFcgKnBo eXNpY2FsX2ZvbnQsCiAJCQkgRFdPUkQgZm9udF90eXBlLCBMUEFSQU0gbFBhcmFtKQogewogICBz dHJ1Y3QgZm9udF9jYWxsYmFja19kYXRhICptYXRjaF9kYXRhCkBAIC0xNDQ1LDcgKzE0NDgsNyBA QCBhZGRfZm9udF9lbnRpdHlfdG9fbGlzdCAoRU5VTUxPR0ZPTlRFWCAqbG9naWNhbF9mb250LAog ICAgICBieSBhIGZvdW5kcnksIHdlIGFjY2VwdCByYXN0ZXIgZm9udHMgaWYgdGhlIGZvbnQgbmFt ZSBpcyBmb3VuZAogICAgICBhbnl3aGVyZSB3aXRoaW4gdGhlIGZ1bGwgbmFtZS4gICovCiAgIGlm ICgobG9naWNhbF9mb250LT5lbGZMb2dGb250LmxmT3V0UHJlY2lzaW9uID09IE9VVF9TVFJJTkdf UFJFQ0lTCi0gICAgICAgJiYgIXN0cnN0ciAobG9naWNhbF9mb250LT5lbGZGdWxsTmFtZSwKKyAg ICAgICAmJiAhd2Nzc3RyIChsb2dpY2FsX2ZvbnQtPmVsZkZ1bGxOYW1lLAogCQkgICBsb2dpY2Fs X2ZvbnQtPmVsZkxvZ0ZvbnQubGZGYWNlTmFtZSkpCiAgICAgICAvKiBDaGVjayBmb3Igd2VsbCBr bm93biBzdWJzdGl0dXRpb25zIHRoYXQgbWVzcyB0aGluZ3MgdXAgaW4gdGhlCiAJIHByZXNlbmNl IG9mIFR5cGUtMSBmb250cyBvZiB0aGUgc2FtZSBuYW1lLiAgKi8KQEAgLTE1MjAsMTEgKzE1MjMs MTEgQEAgYWRkX2ZvbnRfZW50aXR5X3RvX2xpc3QgKEVOVU1MT0dGT05URVggKmxvZ2ljYWxfZm9u dCwKICAgcmV0dXJuIDE7CiB9CiAKLS8qIENhbGxiYWNrIGZ1bmN0aW9uIGZvciBFbnVtRm9udEZh bWlsaWVzRXguCisvKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgRW51bUZvbnRGYW1pbGllc0V4Vy4K ICAqIFRlcm1pbmF0ZXMgdGhlIHNlYXJjaCBvbmNlIHdlIGhhdmUgYSBtYXRjaC4gKi8KIHN0YXRp YyBpbnQgQ0FMTEJBQ0sgQUxJR05fU1RBQ0sKLWFkZF9vbmVfZm9udF9lbnRpdHlfdG9fbGlzdCAo RU5VTUxPR0ZPTlRFWCAqbG9naWNhbF9mb250LAotCQkJICAgICBORVdURVhUTUVUUklDRVggKnBo eXNpY2FsX2ZvbnQsCithZGRfb25lX2ZvbnRfZW50aXR5X3RvX2xpc3QgKEVOVU1MT0dGT05URVhX ICpsb2dpY2FsX2ZvbnQsCisJCQkgICAgIE5FV1RFWFRNRVRSSUNFWFcgKnBoeXNpY2FsX2ZvbnQs CiAJCQkgICAgIERXT1JEIGZvbnRfdHlwZSwgTFBBUkFNIGxQYXJhbSkKIHsKICAgc3RydWN0IGZv bnRfY2FsbGJhY2tfZGF0YSAqbWF0Y2hfZGF0YQpAQCAtMTg4MSw5ICsxODg0LDkgQEAgdzMyX3Rv X2ZjX3dlaWdodCAoaW50IG4pCiAgIHJldHVybiBRbGlnaHQ7CiB9CiAKLS8qIEZpbGwgaW4gYWxs IHRoZSBhdmFpbGFibGUgZGV0YWlscyBvZiBMT0dGT05UIGZyb20gRk9OVF9TUEVDLiAgKi8KKy8q IEZpbGwgaW4gYWxsIHRoZSBhdmFpbGFibGUgZGV0YWlscyBvZiBMT0dGT05UVyBmcm9tIEZPTlRf U1BFQy4gICovCiBzdGF0aWMgdm9pZAotZmlsbF9pbl9sb2dmb250IChzdHJ1Y3QgZnJhbWUgKmYs IExPR0ZPTlQgKmxvZ2ZvbnQsIExpc3BfT2JqZWN0IGZvbnRfc3BlYykKK2ZpbGxfaW5fbG9nZm9u dCAoc3RydWN0IGZyYW1lICpmLCBMT0dGT05UVyAqbG9nZm9udCwgTGlzcF9PYmplY3QgZm9udF9z cGVjKQogewogICBMaXNwX09iamVjdCB0bXAsIGV4dHJhOwogICBpbnQgZHBpID0gRlJBTUVfUkVT X1kgKGYpOwpAQCAtMTk1Myw5ICsxOTU2LDEwIEBAIGZpbGxfaW5fbG9nZm9udCAoc3RydWN0IGZy YW1lICpmLCBMT0dGT05UICpsb2dmb250LCBMaXNwX09iamVjdCBmb250X3NwZWMpCiAgICAgICAg ICAgIHVzZXIgaW5wdXQuICAqLwogICAgICAgZWxzZSBpZiAoU1lNQk9MUCAodG1wKSkKIAl7Ci0J ICBzdHJuY3B5IChsb2dmb250LT5sZkZhY2VOYW1lLAotCQkgICBTREFUQSAoRU5DT0RFX1NZU1RF TSAoU1lNQk9MX05BTUUgKHRtcCkpKSwgTEZfRkFDRVNJWkUpOwotCSAgbG9nZm9udC0+bGZGYWNl TmFtZVtMRl9GQUNFU0laRS0xXSA9ICdcMCc7CisJICBMaXNwX09iamVjdCB0OworCSAgd2NzbmNw eSAobG9nZm9udC0+bGZGYWNlTmFtZSwKKwkJICAgdG9fdW5pY29kZSAoU1lNQk9MX05BTUUgKHRt cCksICZ0KSwgTEZfRkFDRVNJWkUpOworCSAgbG9nZm9udC0+bGZGYWNlTmFtZVtMRl9GQUNFU0la RS0xXSA9IEwnXDAnOwogCX0KICAgICB9CiAKQEAgLTIwNDQsMjIgKzIwNDgsMjIgQEAgbGlzdF9h bGxfbWF0Y2hpbmdfZm9udHMgKHN0cnVjdCBmb250X2NhbGxiYWNrX2RhdGEgKm1hdGNoX2RhdGEp CiAJIG9uIFdpbmRvd3MsIHNvIHdlIGNhbiBrZWVwIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdp dGgKIAkgV2luZG93cyA5eC9NRSBieSB1c2luZyBub24tVW5pY29kZSBmb250IGVudW1lcmF0aW9u IHdpdGhvdXQKIAkgc2FjcmlmaWNpbmcgaW50ZXJuYXRpb25hbGl6YXRpb24gaGVyZS4gICovCi0g ICAgICBjaGFyICpuYW1lOwotICAgICAgTGlzcF9PYmplY3QgZmFtaWx5ID0gQ0FSIChmYW1pbGll cyk7CisgICAgICB3Y2hhcl90ICpuYW1lOworICAgICAgTGlzcF9PYmplY3QgZmFtaWx5ID0gQ0FS IChmYW1pbGllcyksIHQ7CiAgICAgICBmYW1pbGllcyA9IENEUiAoZmFtaWxpZXMpOwogICAgICAg aWYgKE5JTFAgKGZhbWlseSkpCiAgICAgICAgIGNvbnRpbnVlOwogICAgICAgZWxzZSBpZiAoU1lN Qk9MUCAoZmFtaWx5KSkKLSAgICAgICAgbmFtZSA9IFNEQVRBIChFTkNPREVfU1lTVEVNIChTWU1C T0xfTkFNRSAoZmFtaWx5KSkpOworICAgICAgICBuYW1lID0gdG9fdW5pY29kZSAoU1lNQk9MX05B TUUgKGZhbWlseSksICZ0KTsKICAgICAgIGVsc2UKIAljb250aW51ZTsKIAotICAgICAgc3RybmNw eSAobWF0Y2hfZGF0YS0+cGF0dGVybi5sZkZhY2VOYW1lLCBuYW1lLCBMRl9GQUNFU0laRSk7Ci0g ICAgICBtYXRjaF9kYXRhLT5wYXR0ZXJuLmxmRmFjZU5hbWVbTEZfRkFDRVNJWkUgLSAxXSA9ICdc MCc7CisgICAgICB3Y3NuY3B5IChtYXRjaF9kYXRhLT5wYXR0ZXJuLmxmRmFjZU5hbWUsIG5hbWUs IExGX0ZBQ0VTSVpFKTsKKyAgICAgIG1hdGNoX2RhdGEtPnBhdHRlcm4ubGZGYWNlTmFtZVtMRl9G QUNFU0laRSAtIDFdID0gTCdcMCc7CiAKLSAgICAgIEVudW1Gb250RmFtaWxpZXNFeCAoZGMsICZt YXRjaF9kYXRhLT5wYXR0ZXJuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAoRk9OVEVOVU1Q Uk9DKSBhZGRfZm9udF9lbnRpdHlfdG9fbGlzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg KExQQVJBTSkgbWF0Y2hfZGF0YSwgMCk7CisgICAgICBFbnVtRm9udEZhbWlsaWVzRXhXIChkYywg Jm1hdGNoX2RhdGEtPnBhdHRlcm4sCisJCQkgICAoRk9OVEVOVU1QUk9DVykgYWRkX2ZvbnRfZW50 aXR5X3RvX2xpc3QsCisJCQkgICAoTFBBUkFNKSBtYXRjaF9kYXRhLCAwKTsKICAgICB9CiAKICAg cmVsZWFzZV9mcmFtZV9kYyAoZiwgZGMpOwpAQCAtMjIzOSwxNCArMjI0MywxNCBAQCBmb250X3N1 cHBvcnRlZF9zY3JpcHRzIChGT05UU0lHTkFUVVJFICogc2lnKQogICAgVGhlIGZ1bGwgbmFtZSBp cyBpbiBmY25hbWUgZm9ybWF0LCB3aXRoIHdlaWdodCwgc2xhbnQgYW5kIGFudGlhbGlhc2luZwog ICAgc3BlY2lmaWVkIGlmIHRoZXkgYXJlIG5vdCAibm9ybWFsIi4gICovCiBzdGF0aWMgaW50Ci13 MzJmb250X2Z1bGxfbmFtZSAoTE9HRk9OVCAqIGZvbnQsIExpc3BfT2JqZWN0IGZvbnRfb2JqLAot CQkgICBpbnQgcGl4ZWxfc2l6ZSwgY2hhciAqbmFtZSwgaW50IG5ieXRlcykKK3czMmZvbnRfZnVs bF9uYW1lIChMT0dGT05UVyAqIGZvbnQsIExpc3BfT2JqZWN0IGZvbnRfb2JqLAorCQkgICBpbnQg cGl4ZWxfc2l6ZSwgd2NoYXJfdCAqbmFtZSwgaW50IHNpemUpCiB7CiAgIGludCBsZW4sIGhlaWdo dCwgb3V0bGluZTsKLSAgY2hhciAqcDsKKyAgd2NoYXJfdCAqcDsKICAgTGlzcF9PYmplY3QgYW50 aWFsaWFzaW5nLCB3ZWlnaHQgPSBRbmlsOwogCi0gIGxlbiA9IHN0cmxlbiAoZm9udC0+bGZGYWNl TmFtZSk7CisgIGxlbiA9IHdjc2xlbiAoZm9udC0+bGZGYWNlTmFtZSk7CiAKICAgb3V0bGluZSA9 IEVRIChBUkVGIChmb250X29iaiwgRk9OVF9GT1VORFJZX0lOREVYKSwgUW91dGxpbmUpOwogCkBA IC0yMjcxLDExICsyMjc1LDExIEBAIHczMmZvbnRfZnVsbF9uYW1lIChMT0dGT05UICogZm9udCwg TGlzcF9PYmplY3QgZm9udF9vYmosCiAgICAgbGVuICs9IDExICsgU0JZVEVTIChTWU1CT0xfTkFN RSAoYW50aWFsaWFzaW5nKSk7IC8qIDphbnRpYWxpYXM9TkFNRSAqLwogCiAgIC8qIENoZWNrIHRo YXQgdGhlIGJ1ZmZlciBpcyBiaWcgZW5vdWdoICAqLwotICBpZiAobGVuID4gbmJ5dGVzKQorICBp ZiAobGVuID4gc2l6ZSkKICAgICByZXR1cm4gLTE7CiAKICAgcCA9IG5hbWU7Ci0gIHAgKz0gc3By aW50ZiAocCwgIiVzIiwgZm9udC0+bGZGYWNlTmFtZSk7CisgIHAgKz0gc3dwcmludGYgKHAsIG5h bWUgKyBzaXplIC0gcCwgTCIlbHMiLCBmb250LT5sZkZhY2VOYW1lKTsKIAogICBoZWlnaHQgPSBm b250LT5sZkhlaWdodCA/IGVhYnMgKGZvbnQtPmxmSGVpZ2h0KSA6IHBpeGVsX3NpemU7CiAKQEAg LTIyODcsMjAgKzIyOTEsMjAgQEAgdzMyZm9udF9mdWxsX25hbWUgKExPR0ZPTlQgKiBmb250LCBM aXNwX09iamVjdCBmb250X29iaiwKICAgICAgICAgICAvKiBSb3VuZCB0byBuZWFyZXN0IGhhbGYg cG9pbnQuICBmbG9vciBpcyB1c2VkLCBzaW5jZSByb3VuZCBpcyBub3QKIAkgICAgIHN1cHBvcnRl ZCBpbiBNUyBsaWJyYXJ5LiAgKi8KICAgICAgICAgICBwb2ludHNpemUgPSBmbG9vciAocG9pbnRz aXplICogMiArIDAuNSkgLyAyOwotICAgICAgICAgIHAgKz0gc3ByaW50ZiAocCwgIi0lMS4xZiIs IHBvaW50c2l6ZSk7CisgICAgICAgICAgcCArPSBzd3ByaW50ZiAocCwgbmFtZSArIHNpemUgLSBw LCBMIi0lMS4xZiIsIHBvaW50c2l6ZSk7CiAgICAgICAgIH0KICAgICAgIGVsc2UKLSAgICAgICAg cCArPSBzcHJpbnRmIChwLCAiOnBpeGVsc2l6ZT0lZCIsIGhlaWdodCk7CisgICAgICAgIHAgKz0g c3dwcmludGYgKHAsIG5hbWUgKyBzaXplIC0gcCwgTCI6cGl4ZWxzaXplPSVkIiwgaGVpZ2h0KTsK ICAgICB9CiAKICAgaWYgKFNZTUJPTFAgKHdlaWdodCkgJiYgISBOSUxQICh3ZWlnaHQpKQotICAg IHAgKz0gc3ByaW50ZiAocCwgIjolcyIsIFNEQVRBIChTWU1CT0xfTkFNRSAod2VpZ2h0KSkpOwor ICAgIHAgKz0gc3dwcmludGYgKHAsIG5hbWUgKyBzaXplIC0gcCwgTCI6JWxzIiwgU0RBVEEgKFNZ TUJPTF9OQU1FICh3ZWlnaHQpKSk7CiAKICAgaWYgKGZvbnQtPmxmSXRhbGljKQotICAgIHAgKz0g c3ByaW50ZiAocCwgIjppdGFsaWMiKTsKKyAgICBwICs9IHN3cHJpbnRmIChwLCBuYW1lICsgc2l6 ZSAtIHAsIEwiOml0YWxpYyIpOwogCiAgIGlmIChTWU1CT0xQIChhbnRpYWxpYXNpbmcpICYmICEg TklMUCAoYW50aWFsaWFzaW5nKSkKLSAgICBwICs9IHNwcmludGYgKHAsICI6YW50aWFsaWFzPSVz IiwgU0RBVEEgKFNZTUJPTF9OQU1FIChhbnRpYWxpYXNpbmcpKSk7CisgICAgcCArPSBzd3ByaW50 ZiAocCwgbmFtZSArIHNpemUgLSBwLCBMIjphbnRpYWxpYXM9JWxzIiwgU0RBVEEgKFNZTUJPTF9O QU1FIChhbnRpYWxpYXNpbmcpKSk7CiAKICAgcmV0dXJuIChwIC0gbmFtZSk7CiB9CkBAIC0yMzEy LDEzICsyMzE2LDEzIEBAIHczMmZvbnRfZnVsbF9uYW1lIChMT0dGT05UICogZm9udCwgTGlzcF9P YmplY3QgZm9udF9vYmosCiAgICB0aGUgZnVuY3Rpb24gcmV0dXJucyAtMSwgb3RoZXJ3aXNlIGl0 IHJldHVybnMgdGhlIG51bWJlciBvZiBieXRlcwogICAgd3JpdHRlbiB0byBGQ05BTUUuICAqLwog c3RhdGljIGludAotbG9nZm9udF90b19mY25hbWUgKExPR0ZPTlQqIGZvbnQsIGludCBwb2ludHNp emUsIGNoYXIgKmZjbmFtZSwgaW50IHNpemUpCitsb2dmb250X3RvX2ZjbmFtZSAoTE9HRk9OVFcq IGZvbnQsIGludCBwb2ludHNpemUsIHdjaGFyX3QgKmZjbmFtZSwgaW50IHNpemUpCiB7CiAgIGlu dCBsZW4sIGhlaWdodDsKLSAgY2hhciAqcCA9IGZjbmFtZTsKKyAgd2NoYXJfdCAqcCA9IGZjbmFt ZTsKICAgTGlzcF9PYmplY3Qgd2VpZ2h0ID0gUW5pbDsKIAotICBsZW4gPSBzdHJsZW4gKGZvbnQt PmxmRmFjZU5hbWUpICsgMjsKKyAgbGVuID0gd2NzbGVuIChmb250LT5sZkZhY2VOYW1lKSArIDI7 CiAgIGhlaWdodCA9IHBvaW50c2l6ZSAvIDEwOwogICB3aGlsZSAoaGVpZ2h0IC89IDEwKQogICAg IGxlbisrOwpAQCAtMjMzNywxNSArMjM0MSwxNSBAQCBsb2dmb250X3RvX2ZjbmFtZSAoTE9HRk9O VCogZm9udCwgaW50IHBvaW50c2l6ZSwgY2hhciAqZmNuYW1lLCBpbnQgc2l6ZSkKICAgaWYgKGxl biA+IHNpemUpCiAgICAgcmV0dXJuIC0xOwogCi0gIHAgKz0gc3ByaW50ZiAocCwgIiVzLSVkIiwg Zm9udC0+bGZGYWNlTmFtZSwgcG9pbnRzaXplIC8gMTApOworICBwICs9IHN3cHJpbnRmIChwLCBm Y25hbWUgKyBzaXplIC0gcCwgTCIlbHMtJWQiLCBmb250LT5sZkZhY2VOYW1lLCBwb2ludHNpemUg LyAxMCk7CiAgIGlmIChwb2ludHNpemUgJSAxMCkKLSAgICBwICs9IHNwcmludGYgKHAsICIuJWQi LCBwb2ludHNpemUgJSAxMCk7CisgICAgcCArPSBzd3ByaW50ZiAocCwgZmNuYW1lICsgc2l6ZSAt IHAsIEwiLiVkIiwgcG9pbnRzaXplICUgMTApOwogCiAgIGlmIChTWU1CT0xQICh3ZWlnaHQpICYm ICFOSUxQICh3ZWlnaHQpKQotICAgIHAgKz0gc3ByaW50ZiAocCwgIjolcyIsIFNEQVRBIChTWU1C T0xfTkFNRSAod2VpZ2h0KSkpOworICAgIHAgKz0gc3dwcmludGYgKHAsIGZjbmFtZSArIHNpemUg LSBwLCBMIjolbHMiLCBTREFUQSAoU1lNQk9MX05BTUUgKHdlaWdodCkpKTsKIAogICBpZiAoZm9u dC0+bGZJdGFsaWMpCi0gICAgcCArPSBzcHJpbnRmIChwLCAiOml0YWxpYyIpOworICAgIHAgKz0g c3dwcmludGYgKHAsIGZjbmFtZSArIHNpemUgLSBwLCBMIjppdGFsaWMiKTsKIAogICByZXR1cm4g KHAgLSBmY25hbWUpOwogfQpAQCAtMjM5NSwxMiArMjM5OSwxMiBAQCBpbiB0aGUgZm9udCBzZWxl Y3Rpb24gZGlhbG9nLiAqLykKICAgKExpc3BfT2JqZWN0IGZyYW1lLCBMaXNwX09iamVjdCBleGNs dWRlX3Byb3BvcnRpb25hbCkKIHsKICAgc3RydWN0IGZyYW1lICpmID0gZGVjb2RlX3dpbmRvd19z eXN0ZW1fZnJhbWUgKGZyYW1lKTsKLSAgQ0hPT1NFRk9OVCBjZjsKLSAgTE9HRk9OVCBsZjsKKyAg Q0hPT1NFRk9OVFcgY2Y7CisgIExPR0ZPTlRXIGxmOwogICBURVhUTUVUUklDIHRtOwogICBIREMg aGRjOwogICBIQU5ETEUgb2xkb2JqOwotICBjaGFyIGJ1ZlsxMDBdOworICB3Y2hhcl90IGJ1Zlsx MDBdOwogCiAgIG1lbXNldCAoJmNmLCAwLCBzaXplb2YgKGNmKSk7CiAgIG1lbXNldCAoJmxmLCAw LCBzaXplb2YgKGxmKSk7CkBAIC0yNDIwLDcgKzI0MjQsNyBAQCBpbiB0aGUgZm9udCBzZWxlY3Rp b24gZGlhbG9nLiAqLykKICAgICAgZGVmYXVsdCBmb250LiAgKi8KICAgaGRjID0gR2V0REMgKEZS QU1FX1czMl9XSU5ET1cgKGYpKTsKICAgb2xkb2JqID0gU2VsZWN0T2JqZWN0IChoZGMsIEZPTlRf SEFORExFIChGUkFNRV9GT05UIChmKSkpOwotICBHZXRUZXh0RmFjZSAoaGRjLCBMRl9GQUNFU0la RSwgbGYubGZGYWNlTmFtZSk7CisgIEdldFRleHRGYWNlVyAoaGRjLCBMRl9GQUNFU0laRSwgbGYu bGZGYWNlTmFtZSk7CiAgIGlmIChHZXRUZXh0TWV0cmljcyAoaGRjLCAmdG0pKQogICAgIHsKICAg ICAgIGxmLmxmSGVpZ2h0ID0gdG0udG1JbnRlcm5hbExlYWRpbmcgLSB0bS50bUhlaWdodDsKQEAg LTI0MzQsMTEgKzI0MzgsMTEgQEAgaW4gdGhlIGZvbnQgc2VsZWN0aW9uIGRpYWxvZy4gKi8pCiAg IFNlbGVjdE9iamVjdCAoaGRjLCBvbGRvYmopOwogICBSZWxlYXNlREMgKEZSQU1FX1czMl9XSU5E T1cgKGYpLCBoZGMpOwogCi0gIGlmICghQ2hvb3NlRm9udCAoJmNmKQorICBpZiAoIUNob29zZUZv bnRXICgmY2YpCiAgICAgICB8fCBsb2dmb250X3RvX2ZjbmFtZSAoJmxmLCBjZi5pUG9pbnRTaXpl LCBidWYsIDEwMCkgPCAwKQogICAgIHJldHVybiBRbmlsOwogCi0gIHJldHVybiBERUNPREVfU1lT VEVNIChidWlsZF9zdHJpbmcgKGJ1ZikpOworICByZXR1cm4gZnJvbV91bmljb2RlX2J1ZmZlciAo YnVmKTsKIH0KIAogc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IHczMmZvbnRfYm9vbGVhbnMgW10g PSB7CmRpZmYgLS1naXQgYS9zcmMvdzMyZm9udC5oIGIvc3JjL3czMmZvbnQuaAppbmRleCAwYWQw MTI1Li4wNmU1ZjMxIDEwMDY0NAotLS0gYS9zcmMvdzMyZm9udC5oCisrKyBiL3NyYy93MzJmb250 LmgKQEAgLTgwLDkgKzgwLDkgQEAgaW50IHczMmZvbnRfZHJhdyAoc3RydWN0IGdseXBoX3N0cmlu ZyAqcywgaW50IGZyb20sIGludCB0bywKICAgICAgICAgICAgICAgICAgIGludCB4LCBpbnQgeSwg Ym9vbCB3aXRoX2JhY2tncm91bmQpOwogCiAKLWludCB1bmlzY3JpYmVfY2hlY2tfb3RmIChMT0dG T05UICpmb250LCBMaXNwX09iamVjdCBvdGZfc3BlYyk7CitpbnQgdW5pc2NyaWJlX2NoZWNrX290 ZiAoTE9HRk9OVFcgKmZvbnQsIExpc3BfT2JqZWN0IG90Zl9zcGVjKTsKIAotTGlzcF9PYmplY3Qg aW50ZXJuX2ZvbnRfbmFtZSAoY2hhciAqKTsKK0xpc3BfT2JqZWN0IGludGVybl9mb250X25hbWUg KHdjaGFyX3QgKik7CiAKIGV4dGVybiB2b2lkIHN5bXNfb2ZfdzMyZm9udCAodm9pZCk7CiBleHRl cm4gdm9pZCBnbG9iYWxzX29mX3czMmZvbnQgKHZvaWQpOwpkaWZmIC0tZ2l0IGEvc3JjL3czMnVu aXNjcmliZS5jIGIvc3JjL3czMnVuaXNjcmliZS5jCmluZGV4IDczYzA0MTAuLmQ1OGY2MDAgMTAw NjQ0Ci0tLSBhL3NyYy93MzJ1bmlzY3JpYmUuYworKysgYi9zcmMvdzMydW5pc2NyaWJlLmMKQEAg LTQ3LDkgKzQ3LDkgQEAgc3RydWN0IHVuaXNjcmliZV9mb250X2luZm8KIAogaW50IHVuaXNjcmli ZV9hdmFpbGFibGUgPSAwOwogCi0vKiBFbnVtRm9udEZhbWlsaWVzRXggY2FsbGJhY2suICAqLwot c3RhdGljIGludCBDQUxMQkFDSyBBTElHTl9TVEFDSyBhZGRfb3BlbnR5cGVfZm9udF9uYW1lX3Rv X2xpc3QgKEVOVU1MT0dGT05URVggKiwKLQkJCQkJCQkJTkVXVEVYVE1FVFJJQ0VYICosCisvKiBF bnVtRm9udEZhbWlsaWVzRXhXIGNhbGxiYWNrLiAgKi8KK3N0YXRpYyBpbnQgQ0FMTEJBQ0sgQUxJ R05fU1RBQ0sgYWRkX29wZW50eXBlX2ZvbnRfbmFtZV90b19saXN0IChFTlVNTE9HRk9OVEVYVyAq LAorCQkJCQkJCQlORVdURVhUTUVUUklDRVhXICosCiAJCQkJCQkJCURXT1JELCBMUEFSQU0pOwog LyogVXNlZCBieSB1bmlzY3JpYmVfb3RmX2NhcGFiaWxpdHkuICAqLwogc3RhdGljIExpc3BfT2Jq ZWN0IG90Zl9mZWF0dXJlcyAoSERDIGNvbnRleHQsIGNoYXIgKnRhYmxlKTsKQEAgLTg0LDcgKzg0 LDcgQEAgc3RhdGljIExpc3BfT2JqZWN0CiB1bmlzY3JpYmVfbGlzdF9mYW1pbHkgKHN0cnVjdCBm cmFtZSAqZikKIHsKICAgTGlzcF9PYmplY3QgbGlzdCA9IFFuaWw7Ci0gIExPR0ZPTlQgZm9udF9t YXRjaF9wYXR0ZXJuOworICBMT0dGT05UVyBmb250X21hdGNoX3BhdHRlcm47CiAgIEhEQyBkYzsK IAogICBtZW1zZXQgKCZmb250X21hdGNoX3BhdHRlcm4sIDAsIHNpemVvZiAoZm9udF9tYXRjaF9w YXR0ZXJuKSk7CkBAIC05Myw4ICs5Myw4IEBAIHVuaXNjcmliZV9saXN0X2ZhbWlseSAoc3RydWN0 IGZyYW1lICpmKQogCiAgIGRjID0gZ2V0X2ZyYW1lX2RjIChmKTsKIAotICBFbnVtRm9udEZhbWls aWVzRXggKGRjLCAmZm9udF9tYXRjaF9wYXR0ZXJuLAotICAgICAgICAgICAgICAgICAgICAgIChG T05URU5VTVBST0MpIGFkZF9vcGVudHlwZV9mb250X25hbWVfdG9fbGlzdCwKKyAgRW51bUZvbnRG YW1pbGllc0V4VyAoZGMsICZmb250X21hdGNoX3BhdHRlcm4sCisgICAgICAgICAgICAgICAgICAg ICAgKEZPTlRFTlVNUFJPQ1cpIGFkZF9vcGVudHlwZV9mb250X25hbWVfdG9fbGlzdCwKICAgICAg ICAgICAgICAgICAgICAgICAoTFBBUkFNKSAmbGlzdCwgMCk7CiAgIHJlbGVhc2VfZnJhbWVfZGMg KGYsIGRjKTsKIApAQCAtNjA0LDEyICs2MDQsMTIgQEAgdW5pc2NyaWJlX2VuY29kZV9jaGFyIChz dHJ1Y3QgZm9udCAqZm9udCwgaW50IGMpCiAqLwogCiAMCi0vKiBDYWxsYmFjayBmdW5jdGlvbiBm b3IgRW51bUZvbnRGYW1pbGllc0V4LgorLyogQ2FsbGJhY2sgZnVuY3Rpb24gZm9yIEVudW1Gb250 RmFtaWxpZXNFeFcuCiAgICBBZGRzIHRoZSBuYW1lIG9mIG9wZW50eXBlIGZvbnRzIHRvIGEgTGlz cCBsaXN0IChwYXNzZWQgaW4gYXMgdGhlCiAgICBsUGFyYW0gYXJnKS4gKi8KIHN0YXRpYyBpbnQg Q0FMTEJBQ0sgQUxJR05fU1RBQ0sKLWFkZF9vcGVudHlwZV9mb250X25hbWVfdG9fbGlzdCAoRU5V TUxPR0ZPTlRFWCAqbG9naWNhbF9mb250LAotCQkJCU5FV1RFWFRNRVRSSUNFWCAqcGh5c2ljYWxf Zm9udCwKK2FkZF9vcGVudHlwZV9mb250X25hbWVfdG9fbGlzdCAoRU5VTUxPR0ZPTlRFWFcgKmxv Z2ljYWxfZm9udCwKKwkJCQlORVdURVhUTUVUUklDRVhXICpwaHlzaWNhbF9mb250LAogCQkJCURX T1JEIGZvbnRfdHlwZSwgTFBBUkFNIGxpc3Rfb2JqZWN0KQogewogICBMaXNwX09iamVjdCogbGlz dCA9IChMaXNwX09iamVjdCAqKSBsaXN0X29iamVjdDsKQEAgLTY4MCw3ICs2ODAsNyBAQCBhZGRf b3BlbnR5cGVfZm9udF9uYW1lX3RvX2xpc3QgKEVOVU1MT0dGT05URVggKmxvZ2ljYWxfZm9udCwK ICAgIE9URl9TUEVDIGlzIGluIHRoZSBmb3JtYXQKICAgICAgKHNjcmlwdCBsYW5nIFsoZ3N1Yl9m ZWF0dXJlIC4uLil8bmlsXSBbKGdwb3NfZmVhdHVyZSAuLi4pXT8pICovCiBpbnQKLXVuaXNjcmli ZV9jaGVja19vdGYgKExPR0ZPTlQgKmZvbnQsIExpc3BfT2JqZWN0IG90Zl9zcGVjKQordW5pc2Ny aWJlX2NoZWNrX290ZiAoTE9HRk9OVFcgKmZvbnQsIExpc3BfT2JqZWN0IG90Zl9zcGVjKQogewog ICBMaXNwX09iamVjdCBzY3JpcHQsIGxhbmcsIHJlc3Q7CiAgIExpc3BfT2JqZWN0IGZlYXR1cmVz WzJdOwpAQCAtNzI0LDcgKzcyNCw3IEBAIHVuaXNjcmliZV9jaGVja19vdGYgKExPR0ZPTlQgKmZv bnQsIExpc3BfT2JqZWN0IG90Zl9zcGVjKQogICAvKiBTZXQgdXAgZ3JhcGhpY3MgY29udGV4dCBz byB3ZSBjYW4gdXNlIHRoZSBmb250LiAgKi8KICAgZiA9IFhGUkFNRSAoc2VsZWN0ZWRfZnJhbWUp OwogICBjb250ZXh0ID0gZ2V0X2ZyYW1lX2RjIChmKTsKLSAgY2hlY2tfZm9udCA9IENyZWF0ZUZv bnRJbmRpcmVjdCAoZm9udCk7CisgIGNoZWNrX2ZvbnQgPSBDcmVhdGVGb250SW5kaXJlY3RXIChm b250KTsKICAgb2xkX2ZvbnQgPSBTZWxlY3RPYmplY3QgKGNvbnRleHQsIGNoZWNrX2ZvbnQpOwog CiAgIC8qIEV2ZXJ5dGhpbmcgZWxzZSBpcyBjb250YWluZWQgd2l0aGluIG90Zl9zcGVjIHNvIHNo b3VsZCBnZXQK --001a11c39ea813ce720510136e60--
bug-gnu-emacs@HIDDEN
:bug#19910
; Package emacs
.
Full text available.Received: (at 19910) by debbugs.gnu.org; 20 Feb 2015 11:21:07 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 20 06:21:07 2015 Received: from localhost ([127.0.0.1]:49183 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1YOldq-0005m3-Fv for submit <at> debbugs.gnu.org; Fri, 20 Feb 2015 06:21:06 -0500 Received: from mtaout22.012.net.il ([80.179.55.172]:35889) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <eliz@HIDDEN>) id 1YOldn-0005lu-Lx for 19910 <at> debbugs.gnu.org; Fri, 20 Feb 2015 06:21:04 -0500 Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0NK200G00HHX0500@HIDDEN> for 19910 <at> debbugs.gnu.org; Fri, 20 Feb 2015 13:21:02 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NK200G0QI712G00@HIDDEN>; Fri, 20 Feb 2015 13:21:02 +0200 (IST) Date: Fri, 20 Feb 2015 13:21:18 +0200 From: Eli Zaretskii <eliz@HIDDEN> Subject: Re: bug#19910: 24.4; Japanese font names are decoded incorrectly in Cygwin's emacs-w32 in LANG=ja_JP.UTF-8 In-reply-to: <CALus1P=Sf5Z2Bw7ApqDqWJ+va+5Jtar4WiLjbBv_nhjOOLX7nQ@HIDDEN> X-012-Sender: halo1@HIDDEN To: Fujii Hironori <fujii.hironori@HIDDEN> Message-id: <83h9ugltg1.fsf@HIDDEN> References: <CALus1P=Sf5Z2Bw7ApqDqWJ+va+5Jtar4WiLjbBv_nhjOOLX7nQ@HIDDEN> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 19910 Cc: 19910 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii <eliz@HIDDEN> List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.0 (+) > Date: Fri, 20 Feb 2015 19:39:55 +0900 > From: Fujii Hironori <fujii.hironori@HIDDEN> > > (font-family-list) returns incorrectly decoded Japanese font names. > My locale-coding-system is utf-8-unix. > > If I do (setq locale-coding-system 'cp932), it returns correct font names. > But, locale-coding-system is used in other places (e.g. M-x term and M-x man). > locale-coding-system must be utf-8 in my Emacs. The problem is in w32font.c: it should call the "wide" (a.k.a. "Unicode") APIs, and then decode strings using utf-16le, like we do in w32fns.c with encoding strings we pass to w32 GUI APIs.
bug-gnu-emacs@HIDDEN
:bug#19910
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 20 Feb 2015 10:40:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 20 05:40:06 2015 Received: from localhost ([127.0.0.1]:49169 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1YOl09-0004pR-Sg for submit <at> debbugs.gnu.org; Fri, 20 Feb 2015 05:40:06 -0500 Received: from eggs.gnu.org ([208.118.235.92]:60486) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <fujii.hironori@HIDDEN>) id 1YOl08-0004pJ-3O for submit <at> debbugs.gnu.org; Fri, 20 Feb 2015 05:40:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <fujii.hironori@HIDDEN>) id 1YOl03-0001Jr-Q6 for submit <at> debbugs.gnu.org; Fri, 20 Feb 2015 05:40:03 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_05,FREEMAIL_FROM, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:39519) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <fujii.hironori@HIDDEN>) id 1YOl03-0001Jm-NS for submit <at> debbugs.gnu.org; Fri, 20 Feb 2015 05:39:59 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33928) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <fujii.hironori@HIDDEN>) id 1YOl02-0005SU-IY for bug-gnu-emacs@HIDDEN; Fri, 20 Feb 2015 05:39:59 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <fujii.hironori@HIDDEN>) id 1YOl01-0001Ip-Ey for bug-gnu-emacs@HIDDEN; Fri, 20 Feb 2015 05:39:58 -0500 Received: from mail-lb0-x235.google.com ([2a00:1450:4010:c04::235]:36318) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <fujii.hironori@HIDDEN>) id 1YOl01-0001IR-3i for bug-gnu-emacs@HIDDEN; Fri, 20 Feb 2015 05:39:57 -0500 Received: by lbvp9 with SMTP id p9so5464082lbv.3 for <bug-gnu-emacs@HIDDEN>; Fri, 20 Feb 2015 02:39:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=4/H0fjoynhn90i0Jzg6xI0alXpMsm525Tf7Fe7u8XRw=; b=dEIQLiHCzxPcOrezjnLEbhLjcYnNvYHuJLm5B+2pX2UMLA+RKqLvdaLchbstz1U/cg 3hXe9tFj4nx2q8EZS3Xlrq0wXB/n3TwAvZOL+oZnzEeIq0mxqm9UR6EfqH764B7Skmix r0/VrG7hdiI/NB+M+kzH0iMvtmUVxzI4W7ldTQk3+nYSZkKo2v6KJWq+k1N13hHnQdGs YfeSRqLKr+oGIW+cfDWw1L4NDY3Krl31wAynbYL7vhoLA3GUBq0JO7ItQlN1fHLbe1CC jRwABFiRD1DdUrhnxn49aeD15YWz2CGB3RexS6sS4EInhTjkY5/aqmKxKLdlJl/RzjoX RfgQ== MIME-Version: 1.0 X-Received: by 10.112.24.235 with SMTP id x11mr1839127lbf.18.1424428795625; Fri, 20 Feb 2015 02:39:55 -0800 (PST) Received: by 10.112.64.42 with HTTP; Fri, 20 Feb 2015 02:39:55 -0800 (PST) Date: Fri, 20 Feb 2015 19:39:55 +0900 Message-ID: <CALus1P=Sf5Z2Bw7ApqDqWJ+va+5Jtar4WiLjbBv_nhjOOLX7nQ@HIDDEN> Subject: 24.4; Japanese font names are decoded incorrectly in Cygwin's emacs-w32 in LANG=ja_JP.UTF-8 From: Fujii Hironori <fujii.hironori@HIDDEN> To: bug-gnu-emacs@HIDDEN Content-Type: text/plain; charset=UTF-8 X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -4.0 (----) (font-family-list) returns incorrectly decoded Japanese font names. My locale-coding-system is utf-8-unix. If I do (setq locale-coding-system 'cp932), it returns correct font names. But, locale-coding-system is used in other places (e.g. M-x term and M-x man). locale-coding-system must be utf-8 in my Emacs. In GNU Emacs 24.4.1 (x86_64-unknown-cygwin) of 2015-02-13 on desktop-new Windowing system distributor `Microsoft Corp.', version 6.1.7601 Configured using: `configure --srcdir=/home/kbrown/src/cygemacs/emacs-24.4-3.x86_64/src/emacs-24.4 --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/libexec --datadir=/usr/share --localstatedir=/var --sysconfdir=/etc --libdir=/usr/lib --datarootdir=/usr/share --docdir=/usr/share/doc/emacs --htmldir=/usr/share/doc/emacs/html -C --with-w32 'CFLAGS=-ggdb -O2 -pipe -Wimplicit-function-declaration -fdebug-prefix-map=/home/kbrown/src/cygemacs/emacs-24.4-3.x86_64/build=/usr/src/debug/emacs-24.4-3 -fdebug-prefix-map=/home/kbrown/src/cygemacs/emacs-24.4-3.x86_64/src/emacs-24.4=/usr/src/debug/emacs-24.4-3' CPPFLAGS= LDFLAGS=' Important settings: value of $LANG: ja_JP.UTF-8 locale-coding-system: utf-8-unix Major mode: Fundamental Minor modes in effect: tooltip-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t line-number-mode: t transient-mark-mode: t Recent input: <language-change> <help-echo> <help-echo> <help-echo> <help-echo> <help-echo> <help-echo> <help-echo> <menu-bar> <help-menu> <send-emacs-bug-report> Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. No docstring slot for setup-japanese-environment-internal Load-path shadows: None found. Features: (shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util help-fns mail-prsvr mail-utils time-date japan-util tooltip electric uniquify ediff-hook vc-hooks lisp-float-type mwheel w32-common-fns disp-table w32-win w32-vars tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind gfilenotify w32 multi-tty emacs) Memory information: ((conses 16 76005 6531) (symbols 48 17442 0) (miscs 40 60 88) (strings 32 10617 5193) (string-bytes 1 268020) (vectors 16 9545) (vector-slots 8 454592 39464) (floats 8 57 94) (intervals 56 193 0) (buffers 960 12))
Fujii Hironori <fujii.hironori@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#19910
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.