Simon Sapin 11 лет назад
Родитель
Сommit
5dfcdb68ef
2 измененных файлов с 5 добавлено и 9 удалено
  1. 0 1
      src/lib.rs
  2. 5 8
      src/tests.rs

+ 0 - 1
src/lib.rs

@@ -120,7 +120,6 @@ assert!(css_url.serialize() == "http://servo.github.io/rust-url/main.css".to_str
 
 
 #![feature(std_misc, convert)]
-#![cfg_attr(test, feature(core))]
 
 extern crate rustc_serialize;
 

+ 5 - 8
src/tests.rs

@@ -8,7 +8,6 @@
 
 
 use std::char;
-use std::num::from_str_radix;
 use super::{UrlParser, Url, SchemeData, RelativeSchemeData, Host};
 
 
@@ -178,13 +177,11 @@ fn unescape(input: &str) -> String {
                         't' => '\t',
                         'f' => '\x0C',
                         'u' => {
-                            let mut hex = String::new();
-                            hex.push(chars.next().unwrap());
-                            hex.push(chars.next().unwrap());
-                            hex.push(chars.next().unwrap());
-                            hex.push(chars.next().unwrap());
-                            from_str_radix(&hex, 16).ok()
-                                .and_then(char::from_u32).unwrap()
+                            char::from_u32((((
+                                chars.next().unwrap().to_digit(16).unwrap()) * 16 +
+                                chars.next().unwrap().to_digit(16).unwrap()) * 16 +
+                                chars.next().unwrap().to_digit(16).unwrap()) * 16 +
+                                chars.next().unwrap().to_digit(16).unwrap()).unwrap()
                         }
                         _ => panic!("Invalid test data input"),
                     }