Ticket #76 (closed defect: fixed)

Opened 17 months ago

Last modified 17 months ago

REPLACE on strings incorrect

Reported by: rtoy Owned by: somebody
Priority: major Milestone:
Component: Core Version: 2013-03
Keywords: Cc:

Description

Consider:

(defun zot (workspace s)
  (declare (simple-string workspace s))
  (replace workspace s :start1 1 :end1 5 :start2 1 :end2 5))

(defparameter *r* (make-string 40 :initial-element #\A))

(compile 'zot)
(zot *r* "a12345")

After executing this, *r* should contain "A1234AAAA.." but it actually contains "a1234AAAA..". The start1 and start2 indices were not honored.

Change History

Changed 17 months ago by toy.raymond@…

  • status changed from new to closed
  • resolution set to fixed

commit 45fabc8f3fad8876627831708ec3c997d46ce4f8 Author: Raymond Toy <toy.raymond@…> Date: Wed Mar 6 00:27:44 2013 -0800

Fix ticket:76

Missed one place in DO-UNARY-BYTE-BASH to adjust the call to END-MASK to use a bit offset instead of a byte offset. This affects anything that was using DO-UNARY-BYTE-BASH, including REPLACE.

Note: See TracTickets for help on using tickets.