Merge pull request #6220 from Snuffleupagus/issue-6218
Ignore double negative in `Lexer_getNumber` (issue 6218)
This commit is contained in:
commit
4b6e2724ae
@ -671,6 +671,11 @@ var Lexer = (function LexerClosure() {
|
|||||||
if (ch === 0x2D) { // '-'
|
if (ch === 0x2D) { // '-'
|
||||||
sign = -1;
|
sign = -1;
|
||||||
ch = this.nextChar();
|
ch = this.nextChar();
|
||||||
|
|
||||||
|
if (ch === 0x2D) { // '-'
|
||||||
|
// Ignore double negative (this is consistent with Adobe Reader).
|
||||||
|
ch = this.nextChar();
|
||||||
|
}
|
||||||
} else if (ch === 0x2B) { // '+'
|
} else if (ch === 0x2B) { // '+'
|
||||||
ch = this.nextChar();
|
ch = this.nextChar();
|
||||||
}
|
}
|
||||||
|
@ -27,6 +27,13 @@ describe('parser', function() {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should ignore double negative before number', function() {
|
||||||
|
var input = new StringStream('--205.88');
|
||||||
|
var lexer = new Lexer(input);
|
||||||
|
var result = lexer.getNumber();
|
||||||
|
|
||||||
|
expect(result).toEqual(-205.88);
|
||||||
|
});
|
||||||
|
|
||||||
it('should handle glued numbers and operators', function() {
|
it('should handle glued numbers and operators', function() {
|
||||||
var input = new StringStream('123ET');
|
var input = new StringStream('123ET');
|
||||||
|
Loading…
Reference in New Issue
Block a user