From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Pip Cet Newsgroups: gmane.emacs.bugs Subject: bug#36337: 26.1; XBM images are sometimes not displayed correctly Date: Sun, 23 Jun 2019 19:16:04 +0000 Message-ID: References: <83tvcgml2s.fsf@gnu.org> <83o92omezr.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="00000000000019351a058c028988" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="208901"; mail-complaints-to="usenet@blaine.gmane.org" Cc: 36337@debbugs.gnu.org, triska@metalevel.at To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Jun 23 21:17:13 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1hf7zD-000sEJ-Vk for geb-bug-gnu-emacs@m.gmane.org; Sun, 23 Jun 2019 21:17:12 +0200 Original-Received: from localhost ([::1]:46500 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hf7zD-0004Sn-0m for geb-bug-gnu-emacs@m.gmane.org; Sun, 23 Jun 2019 15:17:11 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:37471) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hf7z7-0004Sg-6m for bug-gnu-emacs@gnu.org; Sun, 23 Jun 2019 15:17:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hf7z5-00021o-RB for bug-gnu-emacs@gnu.org; Sun, 23 Jun 2019 15:17:05 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:41114) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hf7z5-00021d-NB for bug-gnu-emacs@gnu.org; Sun, 23 Jun 2019 15:17:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hf7z5-0006gp-HD for bug-gnu-emacs@gnu.org; Sun, 23 Jun 2019 15:17:03 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Pip Cet Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 23 Jun 2019 19:17:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 36337 X-GNU-PR-Package: emacs Original-Received: via spool by 36337-submit@debbugs.gnu.org id=B36337.156131741025691 (code B ref 36337); Sun, 23 Jun 2019 19:17:03 +0000 Original-Received: (at 36337) by debbugs.gnu.org; 23 Jun 2019 19:16:50 +0000 Original-Received: from localhost ([127.0.0.1]:54658 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hf7yr-0006gG-QI for submit@debbugs.gnu.org; Sun, 23 Jun 2019 15:16:50 -0400 Original-Received: from mail-ot1-f52.google.com ([209.85.210.52]:39732) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hf7yp-0006fz-1c for 36337@debbugs.gnu.org; Sun, 23 Jun 2019 15:16:48 -0400 Original-Received: by mail-ot1-f52.google.com with SMTP id r21so11395851otq.6 for <36337@debbugs.gnu.org>; Sun, 23 Jun 2019 12:16:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=RRcV0iv1TOucPZPNV6Qy1jG+tZLsmjjGQ72k1doBU6k=; b=WmCFqTMgX4HExeUKpmloXkI+1ZskEneK8a2+3MEgTuQfV4iYYSmhw6HB+RQUKjxjq7 ZzZ4YWrokYWDZY0d4TAy4XUx0jlY3nQA3Prd6pdU5vG0MGlaSNns0GNoHi2kPaNNo60s n2HOSlP163rFhhkv73KFYv8bTOuBM+5S1Mmftac3ZaxPEMcRuMbDU/vUMJDHEFdnwFb2 F3cIeOoVO6hSyU7pLk/b/a/Uz/7AJpqrpubQ2/MHu08Aa+i07QQHkrokx+9jSNL/NgAq ei0BGCc5cqivNF8XCj+ISOZpBbUgHKaMtdYFNCnrDtckwRaaEaTYSHFc3s/rQZ1Qde+K EQNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=RRcV0iv1TOucPZPNV6Qy1jG+tZLsmjjGQ72k1doBU6k=; b=XMajA5pNTOZAsLrVCttaiMT7Kx/eJ0IHz0MtdlHK+JfBa2nJCqHHHINGIbhwkPTAps GkPzQ/+FzDO/BWrsSqbkhS0PiYu7Rgs0iCAc96JRn8pmOHtpvzqIyrMCV5HUDSs/TKBG joI8TcEclSkMm4xdbLOSz19xk4GQqwQ5o18I2iGnRs3yUiIdH5HFuuUM1tiqHtLMm/rO DvRkKqceAjNFIvZntyHrm0R224VxFpxV+Py2ubNmQEFx90F7yN7oGanPwlw1r+GGjKVz i9hrtjL5BCJS3IgQvTV0MHHoW20bDaXPptKNw11uZZDRF89mU9GFeMYGAY/k7h9R/6wu 1tow== X-Gm-Message-State: APjAAAXNZu8J9faQwgWIDZWLx8Ni1LkblNx9cIqRxytn6YvCGtihzUPj eBx5u9f1o595zFsUkQtDwrkGZS/+3zDGTuVvHvI= X-Google-Smtp-Source: APXvYqz8QZm52/n0j6zlPilXZDCcMuoVqbJUKQobu5YWt+4UITJJ/pgiIOCOyXLJb0BOuTLxOON7s48I9+z9lzfLILQ= X-Received: by 2002:a9d:7352:: with SMTP id l18mr14099017otk.292.1561317401497; Sun, 23 Jun 2019 12:16:41 -0700 (PDT) In-Reply-To: <83o92omezr.fsf@gnu.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.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" Xref: news.gmane.org gmane.emacs.bugs:161167 Archived-At: --00000000000019351a058c028988 Content-Type: text/plain; charset="UTF-8" On Sun, Jun 23, 2019 at 4:41 PM Eli Zaretskii wrote: > > From: Pip Cet > > Date: Sun, 23 Jun 2019 16:26:16 +0000 > > Cc: triska@metalevel.at, 36337@debbugs.gnu.org > > > > My suggestion would be to expand `substring' to work on bool vectors, > > then building a vector of bool vectors and using the existing code for > > that case. Less code in image.c, plus a new utility function that > > might be generally useful. > > Or maybe we should have a variant of make-bool-vector that accepts 2 > dimension s instead of just one? I don't really see how that would be generally useful, to be honest. In fact, I just played around with removing bool vector support entirely. > > (However, do we want to encourage people to use bool vectors?) > Why not? We seem to lack even very basic functions for interacting with bool vectors, and hardly anyone appears to be using them. Even the :stipple face property doesn't. Emacs starts up fine with bool vector support removed. We can use vectors of nil/t (in most cases) or unibyte strings or bignums (which have arbitrary size limits now, but bigbignums would be just a few lines of code, I think). And people _think_ bool vectors have a natural presentation as bytes, but they don't, because some people start with the most significant bit. So I just don't see where bool vectors fit in. > Evidently, it's convenient in this particular use case. Is the convenience worth a thousand lines of code (much of it C) and documentation? --00000000000019351a058c028988 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Don-t-assume-the-width-of-xbm-images-is-divisible-by.patch" Content-Disposition: attachment; filename="0001-Don-t-assume-the-width-of-xbm-images-is-divisible-by.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jx9bryra2 RnJvbSAyZmJmZjMyODQzZGNlYjZhOTAzY2E5OGEwM2IyZjk4MWMwNzZkM2IzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQaXAgQ2V0IDxwaXBjZXRAZ21haWwuY29tPgpEYXRlOiBTdW4s IDIzIEp1biAyMDE5IDA4OjAyOjE4ICswMDAwClN1YmplY3Q6IFtQQVRDSF0gRG9uJ3QgYXNzdW1l IHRoZSB3aWR0aCBvZiB4Ym0gaW1hZ2VzIGlzIGRpdmlzaWJsZSBieSA4LgoKLS0tCiBzcmMvYWxs b2MuYyB8ICAyICstCiBzcmMvZGF0YS5jICB8IDIwICsrKysrKysrKysrKysrKysrKysrCiBzcmMv Zm5zLmMgICB8ICAzICsrKwogc3JjL2ltYWdlLmMgfCAxNCArKysrKysrKysrKy0tLQogNCBmaWxl cyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyYy9hbGxvYy5jIGIvc3JjL2FsbG9jLmMKaW5kZXggNjRhYWE4YWNkZi4uYTgwZmNlMDc4ZiAx MDA2NDQKLS0tIGEvc3JjL2FsbG9jLmMKKysrIGIvc3JjL2FsbG9jLmMKQEAgLTIyMTAsNyArMjIx MCw3IEBAIG1ha2VfdW5pbml0X2Jvb2xfdmVjdG9yIChFTUFDU19JTlQgbmJpdHMpCiAKIERFRlVO ICgibWFrZS1ib29sLXZlY3RvciIsIEZtYWtlX2Jvb2xfdmVjdG9yLCBTbWFrZV9ib29sX3ZlY3Rv ciwgMiwgMiwgMCwKICAgICAgICBkb2M6IC8qIFJldHVybiBhIG5ldyBib29sLXZlY3RvciBvZiBs ZW5ndGggTEVOR1RILCB1c2luZyBJTklUIGZvciBlYWNoIGVsZW1lbnQuCi1MRU5HVEggbXVzdCBi ZSBhIG51bWJlci4gIElOSVQgbWF0dGVycyBvbmx5IGluIHdoZXRoZXIgaXQgaXMgdCBvciBuaWwu ICAqLykKK0xFTkdUSCBtdXN0IGJlIGEgbnVtYmVyLiAgSU5JVCBtYXR0ZXJzIG9ubHkgaW4gd2hl dGhlciBpdCBpcyB0cnVlIG9yIG5pbC4gICovKQogICAoTGlzcF9PYmplY3QgbGVuZ3RoLCBMaXNw X09iamVjdCBpbml0KQogewogICBMaXNwX09iamVjdCB2YWw7CmRpZmYgLS1naXQgYS9zcmMvZGF0 YS5jIGIvc3JjL2RhdGEuYwppbmRleCBjMTY5OWFlYWU3Li43NmIxYzZjYTRjIDEwMDY0NAotLS0g YS9zcmMvZGF0YS5jCisrKyBiL3NyYy9kYXRhLmMKQEAgLTM3ODMsNiArMzc4MywyNSBAQCBERUZV TiAoImJvb2wtdmVjdG9yLWNvdW50LWNvbnNlY3V0aXZlIiwgRmJvb2xfdmVjdG9yX2NvdW50X2Nv bnNlY3V0aXZlLAogICByZXR1cm4gbWFrZV9maXhudW0gKGNvdW50KTsKIH0KIAorREVGVU4gKCJi b29sLXZlY3Rvci1leHRyYWN0IiwgRmJvb2xfdmVjdG9yX2V4dHJhY3QsIFNib29sX3ZlY3Rvcl9l eHRyYWN0LCAxLCAzLCAwLAorICAgICAgIGRvYzogLyogUmV0dXJuIGEgbmV3IGJvb2wgdmVjdG9y IHdoaWNoIGNvbnNpc3RzIG9mIHRoZSBiaXRzCitiZXR3ZWVuIGluZGV4IEZST00gKGluY2x1c2l2 ZSkgYW5kIGluZGV4IFRPIChleGNsdXNpdmUpIG9mIFZFQ1RPUi4gICovKQorICAoTGlzcF9PYmpl Y3QgdmVjdG9yLCBMaXNwX09iamVjdCBmcm9tLCBMaXNwX09iamVjdCB0bykKK3sKKyAgTGlzcF9P YmplY3QgcmVzOworICBwdHJkaWZmX3Qgc2l6ZSwgaWZyb20sIGl0bzsKKworICBDSEVDS19CT09M X1ZFQ1RPUiAodmVjdG9yKTsKKyAgc2l6ZSA9IGJvb2xfdmVjdG9yX3NpemUgKHZlY3Rvcik7Cisg IHZhbGlkYXRlX3N1YmFycmF5ICh2ZWN0b3IsIGZyb20sIHRvLCBzaXplLCAmaWZyb20sICZpdG8p OworCisgIHJlcyA9IG1ha2VfdW5pbml0X2Jvb2xfdmVjdG9yIChpdG8gLSBpZnJvbSk7CisKKyAg Zm9yIChwdHJkaWZmX3QgaSA9IGlmcm9tOyBpIDwgaXRvOyBpKyspCisgICAgYm9vbF92ZWN0b3Jf c2V0IChyZXMsIGkgLSBpZnJvbSwgYm9vbF92ZWN0b3JfYml0cmVmICh2ZWN0b3IsIGkpKTsKKwor ICByZXR1cm4gcmVzOworfQogDAogdm9pZAogc3ltc19vZl9kYXRhICh2b2lkKQpAQCAtNDA2NCw2 ICs0MDgzLDcgQEAgI2RlZmluZSBQVVRfRVJST1Ioc3ltLCB0YWlsLCBtc2cpCQkJXAogICBkZWZz dWJyICgmU2Jvb2xfdmVjdG9yX3N1YnNldHApOwogICBkZWZzdWJyICgmU2Jvb2xfdmVjdG9yX2Nv dW50X2NvbnNlY3V0aXZlKTsKICAgZGVmc3ViciAoJlNib29sX3ZlY3Rvcl9jb3VudF9wb3B1bGF0 aW9uKTsKKyAgZGVmc3ViciAoJlNib29sX3ZlY3Rvcl9leHRyYWN0KTsKIAogICBzZXRfc3ltYm9s X2Z1bmN0aW9uIChRd2hvbGVudW1wLCBYU1lNQk9MIChRbmF0bnVtcCktPnUucy5mdW5jdGlvbik7 CiAKZGlmZiAtLWdpdCBhL3NyYy9mbnMuYyBiL3NyYy9mbnMuYwppbmRleCBmZDBjN2ZjNzFhLi42 YmY0NjlkMWU5IDEwMDY0NAotLS0gYS9zcmMvZm5zLmMKKysrIGIvc3JjL2Zucy5jCkBAIC0xMzI2 LDYgKzEzMjYsOSBAQCBERUZVTiAoInN1YnN0cmluZyIsIEZzdWJzdHJpbmcsIFNzdWJzdHJpbmcs IDEsIDMsIDAsCiAgIExpc3BfT2JqZWN0IHJlczsKICAgcHRyZGlmZl90IHNpemUsIGlmcm9tLCBp dG87CiAKKyAgaWYgKEJPT0xfVkVDVE9SX1AgKHN0cmluZykpCisgICAgcmV0dXJuIEZib29sX3Zl Y3Rvcl9leHRyYWN0IChzdHJpbmcsIGZyb20sIHRvKTsKKwogICBzaXplID0gQ0hFQ0tfVkVDVE9S X09SX1NUUklORyAoc3RyaW5nKTsKICAgdmFsaWRhdGVfc3ViYXJyYXkgKHN0cmluZywgZnJvbSwg dG8sIHNpemUsICZpZnJvbSwgJml0byk7CiAKZGlmZiAtLWdpdCBhL3NyYy9pbWFnZS5jIGIvc3Jj L2ltYWdlLmMKaW5kZXggN2I2NDhjNDZhZS4uNzljOGFjMGRmOCAxMDA2NDQKLS0tIGEvc3JjL2lt YWdlLmMKKysrIGIvc3JjL2ltYWdlLmMKQEAgLTMyNDIsNyArMzI0Miw3IEBAIHhibV9pbWFnZV9w IChMaXNwX09iamVjdCBvYmplY3QpCiAJfQogICAgICAgZWxzZSBpZiAoQk9PTF9WRUNUT1JfUCAo ZGF0YSkpCiAJewotCSAgaWYgKGJvb2xfdmVjdG9yX3NpemUgKGRhdGEpIC8gaGVpZ2h0IDwgd2lk dGgpCisJICBpZiAoaGVpZ2h0ID4gMCAmJiBib29sX3ZlY3Rvcl9zaXplIChkYXRhKSAvIGhlaWdo dCA8IHdpZHRoKQogCSAgICByZXR1cm4gMDsKIAl9CiAgICAgICBlbHNlCkBAIC0zNzk0LDYgKzM3 OTQsMTYgQEAgeGJtX2xvYWQgKHN0cnVjdCBmcmFtZSAqZiwgc3RydWN0IGltYWdlICppbWcpCiAJ ewogCSAgVVNFX1NBRkVfQUxMT0NBOwogCisJICBpZiAoQk9PTF9WRUNUT1JfUCAoZGF0YSkpCisJ ICAgIHsKKwkgICAgICBMaXNwX09iamVjdCBuZXdkYXRhID0gRm1ha2VfdmVjdG9yIChtYWtlX2Zp eG51bSAoaW1nLT5oZWlnaHQpLCBRbmlsKTsKKwkgICAgICBmb3IgKGludCB5ID0gMDsgeSA8IGlt Zy0+aGVpZ2h0OyB5KyspCisJCUFTRVQgKG5ld2RhdGEsIHksIEZzdWJzdHJpbmcgKGRhdGEsCisJ CQkJCSAgICAgIG1ha2VfZml4bnVtICh5ICogaW1nLT53aWR0aCksCisJCQkJCSAgICAgIG1ha2Vf Zml4bnVtICgoeSArIDEpICogaW1nLT53aWR0aCkpKTsKKwkgICAgICBkYXRhID0gbmV3ZGF0YTsK KwkgICAgfQorCiAJICBpZiAoVkVDVE9SUCAoZGF0YSkpCiAJICAgIHsKIAkgICAgICBpbnQgaTsK QEAgLTM4MTMsOCArMzgyMyw2IEBAIHhibV9sb2FkIChzdHJ1Y3QgZnJhbWUgKmYsIHN0cnVjdCBp bWFnZSAqaW1nKQogCSAgICB9CiAJICBlbHNlIGlmIChTVFJJTkdQIChkYXRhKSkKIAkgICAgYml0 cyA9IFNTREFUQSAoZGF0YSk7Ci0JICBlbHNlCi0JICAgIGJpdHMgPSAoY2hhciAqKSBib29sX3Zl Y3Rvcl9kYXRhIChkYXRhKTsKIAogI2lmZGVmIEhBVkVfTlRHVUkKICAgICAgICAgICB7Ci0tIAoy LjIwLjEKCg== --00000000000019351a058c028988--