Skip to content

Commit f75c3d0

Browse files
committed
---
yaml --- r: 23599 b: refs/heads/master c: 54a8d69 h: refs/heads/master i: 23597: 8bd7211 23595: 5a3011c 23591: b4b3b43 23583: 259bdd0 v: v3
1 parent 0764544 commit f75c3d0

File tree

2 files changed

+12
-12
lines changed

2 files changed

+12
-12
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
refs/heads/master: 7fec8419f38bbcd662b24cc7b4a77a902150e3db
2+
refs/heads/master: 54a8d69c4feb878e0367cc55772c04ee2d59c8a5
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: cd6f24f9d14ac90d167386a56e7a6ac1f0318195
55
refs/heads/try: ffbe0e0e00374358b789b0037bcb3a577cd218be

trunk/src/libcore/str.rs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -671,18 +671,18 @@ Section: Comparing strings
671671

672672
/// Bytewise slice equality
673673
pure fn eq_slice(a: &str, b: &str) -> bool {
674-
let a_len = a.len();
675-
let b_len = b.len();
676-
if a_len != b_len { return false; }
677-
let mut end = uint::min(&a_len, &b_len);
678-
679-
let mut i = 0u;
680-
while i < end {
681-
if a[i] != b[i] { return false; }
682-
i += 1u;
674+
do as_buf(a) |ap, alen| {
675+
do as_buf(b) |bp, blen| {
676+
if (alen != blen) { false }
677+
else {
678+
unsafe {
679+
libc::memcmp(ap as *libc::c_void,
680+
bp as *libc::c_void,
681+
alen as libc::size_t) == 0
682+
}
683+
}
684+
}
683685
}
684-
685-
return true;
686686
}
687687

688688
/// Bytewise string equality

0 commit comments

Comments
 (0)