all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Peck, Jeff" <jeff.peck@intel.com>
Cc: bug-gnu-emacs@gnu.org
Subject: RE: translate-region occasionally misses chars?
Date: Fri, 3 May 2002 23:58:35 -0400	[thread overview]
Message-ID: <59F55CE047A6D51196360002A534A4AC0296C96B@pysmsx102.py.intel.com> (raw)

Richard, sorry to be oblique;
In my daily life, "win2k" is a curse word.

I was just trying to apologize in advance for not being able to 
test the problem on a real or clean or useful software platform.
Sorry if I appeared to lump those together with the 'l' word.
Soon as i get a free CPU, i be running maybe GNU on Mach or whatever.
[in a former life i was "peck@sun.com", remember emacstool?
 yeah, good-riddance to that too.]

As for the bug, the problem is intermittant, but fails reliably for me.
The defun i sent is a reproducible as I have for now.
One time i ran it, an it failed on 50 of 50 trials.
[so I have now modified the procedure to insert to a regular buffer,
 instead of *Messages*, i lost the first 35 iterations...]

I take it from your response that it did not fail when you tried it?
If so, that is in itself is useful information.
Was anyone else able to try it? 
Did anyone else log a missed translation?





(defun test-flip (n &optional i)
  (message "flip %d chars, %d times" (- (point-max)(point-min)) n)
  (sit-for 1)
  (setq i n)
  (let ((flip-string                    ; reverse chars and nums:
         (do ((str "") (i 0 (1+ i))) ((> i 255) str)
           (let ((chr (char-to-string
                       (if (or (<= i 32) (>= i 127)) i (- 159 i)))))
             (setq str (concat str chr)))))
        (flop-string 
         (do ((str "") (i 0 (1+ i))) ((> i 255) str)
           (let ((chr (char-to-string
                       (if (or (<= i 32) (>= i 127)) i i))))
             (setq str (concat str chr)))))
        (buf1 (current-buffer))
        (buf2 (get-buffer-create "*flip*"))
	(buf3 (get-buffer-create "errors"))
	)
    (set-buffer buf3) (erase-buffer)
    (insert (format "flip-string is %s\n" (substring flip-string 32 127)))
    (insert (format "flop-string is %s\n" (substring flop-string 32 127)))

    ;; copy buf1 to buf2
    (set-buffer buf2)
    (erase-buffer)
    (insert-buffer buf1)

    (while (plusp n)
      (let* ((t1 (translate-region (point-min) (point-max) flip-string))
	     (t2 (translate-region (point-min) (point-max) flip-string)))
	(setq n (- n 1))
        (let ((comp (abs (compare-buffer-substrings buf1 4 (- (point-max) 4)
                                                    buf2 4 (- (point-max)
4)))))
          (if (not (zerop comp))
              (let ((str1 (save-excursion
                            (set-buffer buf1)
                            (buffer-substring comp (+ comp 7))))
                    (str2 (buffer-substring comp (+ comp 7))))
		(set-buffer buf3)
                (insert (format "%d. error at %d: [%s] [%s] #%d  #%d\n"
				(- i n) comp str1 str2 t1 t2))
		(set-buffer buf2)
                (sit-for 1)
                (erase-buffer)
                (insert-buffer buf1)
                )))))))



-----Original Message-----
From: Richard Stallman [mailto:rms@gnu.org]
Sent: Friday, May 03, 2002 8:37 PM
To: jeff.peck@intel.com
Cc: bug-gnu-emacs@gnu.org
Subject: Re: translate-region occasionally misses chars?


    But occasionally, as demonstrated by the output below,
    a single character will fail to be translated.
    [can't tell if it fails on pass1 or pass2, but it doesn't matter]

Can you find a reproducible test case to report?  It is hard to debug
without that.

If you try the same test case over and over, do you get varying
results?

    It fails on both my Win2k machines, I don't a have a unix/linux to test.

Please dont call Windows "win", and please don't call the whole system
"Linux".

In hacker terminology, calling something a "win" is a form of praise.
If you wish to praise Microsoft Windows, you're free to do so; but if you
don't, then you might want to think twice about using the term "win2k".

As for the Linux system, it is more GNU than Linux, so please call it
"GNU/Linux".  If you call it "Linux", you're giving someone else the
credit for our work, and that makes it hard for us to recruit support
for further work.  See http://www.gnu.org/gnu/linux-and-gnu.html.

             reply	other threads:[~2002-05-04  3:58 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-05-04  3:58 Peck, Jeff [this message]
2002-05-05  5:34 ` translate-region occasionally misses chars? Richard Stallman
  -- strict thread matches above, loose matches on Subject: below --
2002-06-07 16:33 Peck, Jeff
2002-06-15 14:13 ` Richard Stallman
2002-05-03  2:51 Peck, Jeff
2002-05-04  3:36 ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=59F55CE047A6D51196360002A534A4AC0296C96B@pysmsx102.py.intel.com \
    --to=jeff.peck@intel.com \
    --cc=bug-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.