From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.bugs Subject: bug#18006: Simplify via set_binary_mode Date: Mon, 14 Jul 2014 13:16:06 -0700 Organization: UCLA Computer Science Department Message-ID: <53C43A86.4070303@cs.ucla.edu> References: <53C1A00C.6050906@cs.ucla.edu> <837g3hanzp.fsf@gnu.org> <53C21918.9020001@cs.ucla.edu> <8338e59u9u.fsf@gnu.org> <53C33C6A.6060601@cs.ucla.edu> <83pph87ype.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------070802030709020101090309" X-Trace: ger.gmane.org 1405369048 15819 80.91.229.3 (14 Jul 2014 20:17:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 14 Jul 2014 20:17:28 +0000 (UTC) Cc: 18006@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Jul 14 22:17:20 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1X6mgW-0000kB-Gd for geb-bug-gnu-emacs@m.gmane.org; Mon, 14 Jul 2014 22:17:16 +0200 Original-Received: from localhost ([::1]:59768 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X6mgW-0006Ha-1w for geb-bug-gnu-emacs@m.gmane.org; Mon, 14 Jul 2014 16:17:16 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59222) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X6mgO-0006GU-8O for bug-gnu-emacs@gnu.org; Mon, 14 Jul 2014 16:17:14 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X6mgI-0008U4-Aw for bug-gnu-emacs@gnu.org; Mon, 14 Jul 2014 16:17:08 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:59737) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X6mgI-0008Tz-89 for bug-gnu-emacs@gnu.org; Mon, 14 Jul 2014 16:17:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1X6mgH-0007sh-Iw for bug-gnu-emacs@gnu.org; Mon, 14 Jul 2014 16:17:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 14 Jul 2014 20:17:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 18006 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 18006-submit@debbugs.gnu.org id=B18006.140536898730224 (code B ref 18006); Mon, 14 Jul 2014 20:17:01 +0000 Original-Received: (at 18006) by debbugs.gnu.org; 14 Jul 2014 20:16:27 +0000 Original-Received: from localhost ([127.0.0.1]:54992 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1X6mfi-0007rO-2C for submit@debbugs.gnu.org; Mon, 14 Jul 2014 16:16:26 -0400 Original-Received: from smtp.cs.ucla.edu ([131.179.128.62]:49307) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1X6mff-0007r9-Ab for 18006@debbugs.gnu.org; Mon, 14 Jul 2014 16:16:24 -0400 Original-Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id B8FADA60002; Mon, 14 Jul 2014 13:16:16 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Original-Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id cUrdO1wrx7gB; Mon, 14 Jul 2014 13:16:11 -0700 (PDT) Original-Received: from [192.168.1.9] (pool-108-0-233-62.lsanca.fios.verizon.net [108.0.233.62]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id 9A0C3A6000E; Mon, 14 Jul 2014 13:16:11 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 In-Reply-To: <83pph87ype.fsf@gnu.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:91550 Archived-At: This is a multi-part message in MIME format. --------------070802030709020101090309 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Eli Zaretskii wrote: > Otherwise, the patch looks good to me. Thanks; I installed it after fixing things up as per your comments. Your explanation of _fmode led me to find a minor porting bug. Fx_load_color_file [!HAVE_X_WINDOWS] uses fopen with "rt"; unlike "rb" this isn't specified by POSIX and a web search suggests that it does fail on a few older platforms. Emacs no longer modifies _fmode so "r" should suffice now anyway. Also, there are two other places where some "rt"-related simplifications can be done. Proposed further patch attached. --------------070802030709020101090309 Content-Type: text/plain; charset=UTF-8; name="binary-io.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="binary-io.patch" PT09IG1vZGlmaWVkIGZpbGUgJ2xpYi1zcmMvQ2hhbmdlTG9nJwotLS0gbGliLXNyYy9DaGFu Z2VMb2cJMjAxNC0wNy0xNCAxOToyMzoxOCArMDAwMAorKysgbGliLXNyYy9DaGFuZ2VMb2cJ MjAxNC0wNy0xNCAxOTo0Njo1NCArMDAwMApAQCAtMSw1ICsxLDkgQEAKIDIwMTQtMDctMTQg IFBhdWwgRWdnZXJ0ICA8ZWdnZXJ0QGNzLnVjbGEuZWR1PgogCisJVXNlICJiIiBmbGFnIG1v cmUgY29uc2lzdGVudGx5OyBhdm9pZCAidCIgKEJ1ZyMxODAwNikuCisJKiBtYWtlLWRvY2Zp bGUuYyAoUkVBRF9URVhUKTogUmVtb3ZlOyBhbGwgdXNlcyByZXBsYWNlZCBieSAiciIuCisJ KFJFQURfQklOQVJZKTogUmVtb3ZlOyBhbGwgdXNlcyByZXBsYWNlZCBieSAicmIiLgorCiAJ VXNlIGJpbmFyeS1pbyBtb2R1bGUsIE9fQklOQVJZLCBhbmQgImIiIGZsYWcgKEJ1ZyMxODAw NikuCiAJKiBldGFncy5jLCBoZXhsLmMsIG1ha2UtZG9jZmlsZS5jOgogCUluY2x1ZGUgYmlu YXJ5LWlvLmggaW5zdGVhZCBvZiBmY250bC5oIGFuZC9vciBpby5oLgoKPT09IG1vZGlmaWVk IGZpbGUgJ2xpYi1zcmMvbWFrZS1kb2NmaWxlLmMnCi0tLSBsaWItc3JjL21ha2UtZG9jZmls ZS5jCTIwMTQtMDctMTQgMTk6MjM6MTggKzAwMDAKKysrIGxpYi1zcmMvbWFrZS1kb2NmaWxl LmMJMjAxNC0wNy0xNCAxOTo0Njo1NCArMDAwMApAQCAtNTUsMTIgKzU1LDggQEAKICAgIFNp bWlsYXJseSwgbXNkb3MgZGVmaW5lcyB0aGlzIGFzIHN5c19jaGRpciwgYnV0IHdlJ3JlIG5v dCBsaW5raW5nIHdpdGggdGhlCiAgICBmaWxlIHdoZXJlIHRoYXQgZnVuY3Rpb24gaXMgZGVm aW5lZC4gICovCiAjdW5kZWYgY2hkaXIKLSNkZWZpbmUgUkVBRF9URVhUICJydCIKLSNkZWZp bmUgUkVBRF9CSU5BUlkgInJiIgogI2RlZmluZSBJU19TTEFTSChjKSAgKChjKSA9PSAnLycg fHwgKGMpID09ICdcXCcgfHwgKGMpID09ICc6JykKICNlbHNlICAvKiBub3QgRE9TX05UICov Ci0jZGVmaW5lIFJFQURfVEVYVCAiciIKLSNkZWZpbmUgUkVBRF9CSU5BUlkgInIiCiAjZGVm aW5lIElTX1NMQVNIKGMpICAoKGMpID09ICcvJykKICNlbmRpZiAvKiBub3QgRE9TX05UICov CiAKQEAgLTIxNiwxMSArMjEyLDExIEBACiAgIGlmICghZ2VuZXJhdGVfZ2xvYmFscykKICAg ICBwdXRfZmlsZW5hbWUgKGZpbGVuYW1lKTsKICAgaWYgKGxlbiA+IDQgJiYgIXN0cmNtcCAo ZmlsZW5hbWUgKyBsZW4gLSA0LCAiLmVsYyIpKQotICAgIHJldHVybiBzY2FuX2xpc3BfZmls ZSAoZmlsZW5hbWUsIFJFQURfQklOQVJZKTsKKyAgICByZXR1cm4gc2Nhbl9saXNwX2ZpbGUg KGZpbGVuYW1lLCAicmIiKTsKICAgZWxzZSBpZiAobGVuID4gMyAmJiAhc3RyY21wIChmaWxl bmFtZSArIGxlbiAtIDMsICIuZWwiKSkKLSAgICByZXR1cm4gc2Nhbl9saXNwX2ZpbGUgKGZp bGVuYW1lLCBSRUFEX1RFWFQpOworICAgIHJldHVybiBzY2FuX2xpc3BfZmlsZSAoZmlsZW5h bWUsICJyIik7CiAgIGVsc2UKLSAgICByZXR1cm4gc2Nhbl9jX2ZpbGUgKGZpbGVuYW1lLCBS RUFEX1RFWFQpOworICAgIHJldHVybiBzY2FuX2NfZmlsZSAoZmlsZW5hbWUsICJyIik7CiB9 CiAKIHN0YXRpYyB2b2lkCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3JjL0NoYW5nZUxvZycKLS0t IHNyYy9DaGFuZ2VMb2cJMjAxNC0wNy0xNCAxOToyMzoxOCArMDAwMAorKysgc3JjL0NoYW5n ZUxvZwkyMDE0LTA3LTE0IDE5OjQ2OjU0ICswMDAwCkBAIC0xLDUgKzEsMTAgQEAKIDIwMTQt MDctMTQgIFBhdWwgRWdnZXJ0ICA8ZWdnZXJ0QGNzLnVjbGEuZWR1PgogCisJVXNlICJiIiBm bGFnIG1vcmUgY29uc2lzdGVudGx5OyBhdm9pZCAidCIgKEJ1ZyMxODAwNikuCisJKiBscmVh ZC5jIChGbG9hZCkgW0RPU19OVF06CisJKiB4ZmFjZXMuYyAoRnhfbG9hZF9jb2xvcl9maWxl KSBbIUhBVkVfWF9XSU5ET1dTXToKKwlObyBsb25nZXIgbmVlZCB0byB1c2UgInJ0IiBpbnN0 ZWFkIG9mICJyIi4KKwogCVVzZSBiaW5hcnktaW8gbW9kdWxlLCBPX0JJTkFSWSwgYW5kICJi IiBmbGFnIChCdWcjMTgwMDYpLgogCSogY2FsbHByb2MuYyAoY3JlYXRlX3RlbXBfZmlsZSk6 IFVzZSBta29zdGVtcCdzIE9fQklOQVJZIGZsYWcuCiAJKiBlbWFjcy5jIFtNU0RPU106Cgo9 PT0gbW9kaWZpZWQgZmlsZSAnc3JjL2xyZWFkLmMnCi0tLSBzcmMvbHJlYWQuYwkyMDE0LTA3 LTAyIDAzOjI2OjE5ICswMDAwCisrKyBzcmMvbHJlYWQuYwkyMDE0LTA3LTE0IDE5OjQ2OjU0 ICswMDAwCkBAIC0xMDYxLDEwICsxMDYxLDYgQEAKICAgY29uc3QgY2hhciAqZm1vZGUgPSAi ciI7CiAgIGludCB2ZXJzaW9uOwogCi0jaWZkZWYgRE9TX05UCi0gIGZtb2RlID0gInJ0IjsK LSNlbmRpZiAvKiBET1NfTlQgKi8KLQogICBDSEVDS19TVFJJTkcgKGZpbGUpOwogCiAgIC8q IElmIGZpbGUgbmFtZSBpcyBtYWdpYywgY2FsbCB0aGUgaGFuZGxlci4gICovCkBAIC0xMTY5 LDcgKzExNjUsNyBAQAogCSBUcmFtcCBkb2VzIG5vdCBjYXRjaCBgbG9hZCcgb3BlcmF0aW9u cyBmb3Igc3VjaCBmaWxlcywgc28gd2UKIAkgZW5kIHVwIHdpdGggYSBuaWwgYXMgdGhlIGBs b2FkJyBoYW5kbGVyIGFib3ZlLiAgSWYgd2Ugd291bGQKIAkgY29udGludWUgd2l0aCBmZCA9 IC0yLCB3ZSB3aWxsIGJlaGF2ZSB3cm9uZ2x5LCBhbmQgaW4KLQkgcGFydGljdWxhciB0cnkg cmVhZGluZyBhIC5lbGMgZmlsZSBpbiB0aGUgInJ0IiBtb2RlIGluc3RlYWQKKwkgcGFydGlj dWxhciB0cnkgcmVhZGluZyBhIC5lbGMgZmlsZSBpbiB0aGUgInIiIG1vZGUgaW5zdGVhZAog CSBvZiAicmIiLiAgU2VlIGJ1ZyAjOTMxMSBmb3IgdGhlIHJlc3VsdHMuICBUbyB3b3JrIGFy b3VuZAogCSB0aGlzLCB3ZSB0cnkgdG8gb3BlbiB0aGUgZmlsZSBsb2NhbGx5LCBhbmQgZ28g d2l0aCB0aGF0IGlmIGl0CiAJIHN1Y2NlZWRzLiAgKi8KCj09PSBtb2RpZmllZCBmaWxlICdz cmMveGZhY2VzLmMnCi0tLSBzcmMveGZhY2VzLmMJMjAxNC0wNy0wNyAyMzozMzowNSArMDAw MAorKysgc3JjL3hmYWNlcy5jCTIwMTQtMDctMTQgMTk6NDY6NTQgKzAwMDAKQEAgLTYyNTYs NyArNjI1Niw3IEBACiAgIGFic3BhdGggPSBGZXhwYW5kX2ZpbGVfbmFtZSAoZmlsZW5hbWUs IFFuaWwpOwogCiAgIGJsb2NrX2lucHV0ICgpOwotICBmcCA9IGVtYWNzX2ZvcGVuIChTU0RB VEEgKGFic3BhdGgpLCAicnQiKTsKKyAgZnAgPSBlbWFjc19mb3BlbiAoU1NEQVRBIChhYnNw YXRoKSwgInIiKTsKICAgaWYgKGZwKQogICAgIHsKICAgICAgIGNoYXIgYnVmWzUxMl07Cgo= --------------070802030709020101090309--