mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Properly use big endianness to parse font feature tags
This commit is contained in:
parent
7fc01437f4
commit
7eb7fc7582
2 changed files with 7 additions and 7 deletions
|
@ -1815,10 +1815,10 @@ ${helpers.single_keyword_system("font-variant-position",
|
|||
impl ToCss for FeatureTagValue {
|
||||
fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
|
||||
use std::str;
|
||||
use byteorder::{WriteBytesExt, NativeEndian};
|
||||
use byteorder::{WriteBytesExt, BigEndian};
|
||||
|
||||
let mut raw: Vec<u8> = vec!();
|
||||
raw.write_u32::<NativeEndian>(self.tag).unwrap();
|
||||
raw.write_u32::<BigEndian>(self.tag).unwrap();
|
||||
let str_print = str::from_utf8(&raw).unwrap_or_default();
|
||||
|
||||
match self.value {
|
||||
|
@ -1836,7 +1836,7 @@ ${helpers.single_keyword_system("font-variant-position",
|
|||
use std::io::Cursor;
|
||||
use std::str;
|
||||
use std::ops::Deref;
|
||||
use byteorder::{ReadBytesExt, NativeEndian};
|
||||
use byteorder::{ReadBytesExt, BigEndian};
|
||||
|
||||
let tag = try!(input.expect_string());
|
||||
|
||||
|
@ -1848,7 +1848,7 @@ ${helpers.single_keyword_system("font-variant-position",
|
|||
}
|
||||
|
||||
let mut raw = Cursor::new(tag.as_bytes());
|
||||
let u_tag = raw.read_u32::<NativeEndian>().unwrap();
|
||||
let u_tag = raw.read_u32::<BigEndian>().unwrap();
|
||||
|
||||
if let Ok(value) = input.try(|input| input.expect_integer()) {
|
||||
// handle integer, throw if it is negative
|
||||
|
|
|
@ -10,7 +10,7 @@ use style_traits::ToCss;
|
|||
|
||||
#[test]
|
||||
fn font_feature_settings_should_parse_properly() {
|
||||
use byteorder::{ReadBytesExt, NativeEndian};
|
||||
use byteorder::{ReadBytesExt, BigEndian};
|
||||
use std::io::Cursor;
|
||||
|
||||
let normal = parse_longhand!(font_feature_settings, "normal");
|
||||
|
@ -20,8 +20,8 @@ fn font_feature_settings_should_parse_properly() {
|
|||
let mut a_d_bytes = Cursor::new(b"abcd");
|
||||
let mut e_h_bytes = Cursor::new(b"efgh");
|
||||
|
||||
let abcd = a_d_bytes.read_u32::<NativeEndian>().unwrap();
|
||||
let efgh = e_h_bytes.read_u32::<NativeEndian>().unwrap();
|
||||
let abcd = a_d_bytes.read_u32::<BigEndian>().unwrap();
|
||||
let efgh = e_h_bytes.read_u32::<BigEndian>().unwrap();
|
||||
|
||||
let on = parse_longhand!(font_feature_settings, "\"abcd\" on");
|
||||
let on_computed = computed_value::T::Tag(vec![
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue