Wed, 15 Apr 2020 11:49:54 +0800
Merge
1.1 --- a/.hgtags Wed Apr 15 11:14:58 2020 +0800 1.2 +++ b/.hgtags Wed Apr 15 11:49:54 2020 +0800 1.3 @@ -1081,5 +1081,16 @@ 1.4 735e7a309c5b0623bf25b29a0a1e7e437d56a43c jdk8u242-b05 1.5 0735b1dcec3677634ca632683ca14911431a236a jdk8u242-b06 1.6 1bccea33f6dbb43bf0cb74b82bd9669aba5319ab jdk8u242-b07 1.7 +0704986602a8506f41e5a4648d724be74f1e6f95 jdk8u242-b08 1.8 +0704986602a8506f41e5a4648d724be74f1e6f95 jdk8u242-ga 1.9 c03ab69fec12532f78e4ebb57edb2a93cfdc1a4f mips64el-jdk8u242-b09 1.10 17b2fca19198baa215f78feb276750d771b2bc59 mips64el-jdk8u242-b10 1.11 +191f7b51899b59c104f0ec3fc135cf50bf836e99 jdk8u252-b00 1.12 +7487b6f12a01cd9596f80b49440859aa33ba4890 jdk8u252-b01 1.13 +bbf9c324a735c6b9f95fedc61803346ef93b27f2 jdk8u252-b02 1.14 +91381cf36ea49a3e08b10971160f714a6bf71dfd jdk8u252-b03 1.15 +e767af0b6500d829977e23cfb3fe19f28a4e9f88 jdk8u252-b04 1.16 +7fd34fff5c4418b869b96c6f3c1f9fd632590a5b jdk8u252-b05 1.17 +b988f627520c45015f0b91d2ee35e69531300770 jdk8u252-b06 1.18 +0666ec7fe2b45353dc0e09c1f6f386bdf763eeb4 jdk8u252-b07 1.19 +95d61d0f326bbfaddc2cbd29e67b12c00041caaa jdk8u252-b08
2.1 --- a/THIRD_PARTY_README Wed Apr 15 11:14:58 2020 +0800 2.2 +++ b/THIRD_PARTY_README Wed Apr 15 11:49:54 2020 +0800 2.3 @@ -1712,10 +1712,9 @@ 2.4 2.5 --- begin of LICENSE --- 2.6 2.7 - Mesa 3-D graphics library 2.8 - Version: 5.0 2.9 - 2.10 - Copyright (C) 1999-2002 Brian Paul All Rights Reserved. 2.11 + Mesa 3-D Graphics Library v19.2.1 2.12 + 2.13 + Copyright (C) 1999-2007 Brian Paul All Rights Reserved. 2.14 2.15 Permission is hereby granted, free of charge, to any person obtaining a 2.16 copy of this software and associated documentation files (the "Software"), 2.17 @@ -1730,9 +1729,118 @@ 2.18 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 2.19 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 2.20 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 2.21 - BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 2.22 - AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 2.23 - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 2.24 + THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 2.25 + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 2.26 + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 2.27 + SOFTWARE. 2.28 + 2.29 +Attention, Contributors 2.30 + 2.31 +When contributing to the Mesa project you must agree to the licensing terms 2.32 +of the component to which you're contributing. 2.33 +The following section lists the primary components of the Mesa distribution 2.34 +and their respective licenses. 2.35 +Mesa Component Licenses 2.36 + 2.37 + 2.38 + 2.39 +Component Location License 2.40 +------------------------------------------------------------------ 2.41 +Main Mesa code src/mesa/ MIT 2.42 +Device drivers src/mesa/drivers/* MIT, generally 2.43 + 2.44 +Gallium code src/gallium/ MIT 2.45 + 2.46 +Ext headers GL/glext.h Khronos 2.47 + GL/glxext.h Khronos 2.48 + GL/wglext.h Khronos 2.49 + KHR/khrplatform.h Khronos 2.50 + 2.51 +***************************************************************************** 2.52 + 2.53 +---- 2.54 +include/GL/gl.h : 2.55 + 2.56 + 2.57 + Mesa 3-D graphics library 2.58 + 2.59 + Copyright (C) 1999-2006 Brian Paul All Rights Reserved. 2.60 + Copyright (C) 2009 VMware, Inc. All Rights Reserved. 2.61 + 2.62 + Permission is hereby granted, free of charge, to any person obtaining a 2.63 + copy of this software and associated documentation files (the "Software"), 2.64 + to deal in the Software without restriction, including without limitation 2.65 + the rights to use, copy, modify, merge, publish, distribute, sublicense, 2.66 + and/or sell copies of the Software, and to permit persons to whom the 2.67 + Software is furnished to do so, subject to the following conditions: 2.68 + 2.69 + The above copyright notice and this permission notice shall be included 2.70 + in all copies or substantial portions of the Software. 2.71 + 2.72 + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 2.73 + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 2.74 + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 2.75 + THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR 2.76 + OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 2.77 + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 2.78 + OTHER DEALINGS IN THE SOFTWARE. 2.79 + 2.80 + ***************************************************************************** 2.81 + 2.82 +---- 2.83 +include/GL/glext.h 2.84 +include/GL/glxext.h 2.85 +include/GL/wglxext.h : 2.86 + 2.87 + 2.88 + Copyright (c) 2013 - 2018 The Khronos Group Inc. 2.89 + 2.90 + Permission is hereby granted, free of charge, to any person obtaining a 2.91 + copy of this software and/or associated documentation files (the 2.92 + "Materials"), to deal in the Materials without restriction, including 2.93 + without limitation the rights to use, copy, modify, merge, publish, 2.94 + distribute, sublicense, and/or sell copies of the Materials, and to 2.95 + permit persons to whom the Materials are furnished to do so, subject to 2.96 + the following conditions: 2.97 + 2.98 + The above copyright notice and this permission notice shall be included 2.99 + in all copies or substantial portions of the Materials. 2.100 + 2.101 + THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 2.102 + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 2.103 + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 2.104 + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 2.105 + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 2.106 + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 2.107 + MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 2.108 + 2.109 + ***************************************************************************** 2.110 + 2.111 +---- 2.112 +include/KHR/khrplatform.h : 2.113 + 2.114 + Copyright (c) 2008 - 2018 The Khronos Group Inc. 2.115 + 2.116 + Permission is hereby granted, free of charge, to any person obtaining a 2.117 + copy of this software and/or associated documentation files (the 2.118 + "Materials"), to deal in the Materials without restriction, including 2.119 + without limitation the rights to use, copy, modify, merge, publish, 2.120 + distribute, sublicense, and/or sell copies of the Materials, and to 2.121 + permit persons to whom the Materials are furnished to do so, subject to 2.122 + the following conditions: 2.123 + 2.124 + The above copyright notice and this permission notice shall be included 2.125 + in all copies or substantial portions of the Materials. 2.126 + 2.127 + THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 2.128 + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 2.129 + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 2.130 + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 2.131 + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 2.132 + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 2.133 + MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 2.134 + 2.135 + ***************************************************************************** 2.136 2.137 --- end of LICENSE --- 2.138
3.1 --- a/src/jdk/nashorn/internal/runtime/regexp/RegExpScanner.java Wed Apr 15 11:14:58 2020 +0800 3.2 +++ b/src/jdk/nashorn/internal/runtime/regexp/RegExpScanner.java Wed Apr 15 11:49:54 2020 +0800 3.3 @@ -1,5 +1,5 @@ 3.4 /* 3.5 - * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved. 3.6 + * Copyright (c) 2010, 2019, Oracle and/or its affiliates. All rights reserved. 3.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3.8 * 3.9 * This code is free software; you can redistribute it and/or modify it 3.10 @@ -141,14 +141,14 @@ 3.11 throw new PatternSyntaxException(e.getMessage(), string, scanner.position); 3.12 } 3.13 3.14 - scanner.processForwardReferences(); 3.15 - 3.16 // Throw syntax error unless we parsed the entire JavaScript regexp without syntax errors 3.17 if (scanner.position != string.length()) { 3.18 final String p = scanner.getStringBuilder().toString(); 3.19 throw new PatternSyntaxException(string, p, p.length() + 1); 3.20 } 3.21 3.22 + scanner.processForwardReferences(); 3.23 + 3.24 return scanner; 3.25 } 3.26
4.1 --- a/src/jdk/nashorn/internal/runtime/regexp/joni/Parser.java Wed Apr 15 11:14:58 2020 +0800 4.2 +++ b/src/jdk/nashorn/internal/runtime/regexp/joni/Parser.java Wed Apr 15 11:49:54 2020 +0800 4.3 @@ -452,7 +452,7 @@ 4.4 private Node parseExp(final TokenType term) { 4.5 if (token.type == term) 4.6 { 4.7 - return StringNode.EMPTY; // goto end_of_token 4.8 + return StringNode.createEmpty(); // goto end_of_token 4.9 } 4.10 4.11 Node node = null; 4.12 @@ -461,7 +461,7 @@ 4.13 switch(token.type) { 4.14 case ALT: 4.15 case EOT: 4.16 - return StringNode.EMPTY; // end_of_token:, node_new_empty 4.17 + return StringNode.createEmpty(); // end_of_token:, node_new_empty 4.18 4.19 case SUBEXP_OPEN: 4.20 node = parseEnclose(TokenType.SUBEXP_CLOSE); 4.21 @@ -569,7 +569,7 @@ 4.22 if (syntax.contextInvalidRepeatOps()) { 4.23 throw new SyntaxException(ERR_TARGET_OF_REPEAT_OPERATOR_NOT_SPECIFIED); 4.24 } 4.25 - node = StringNode.EMPTY; // node_new_empty 4.26 + node = StringNode.createEmpty(); // node_new_empty 4.27 } else { 4.28 return parseExpTkByte(group); // goto tk_byte 4.29 }
5.1 --- a/src/jdk/nashorn/internal/runtime/regexp/joni/ast/StringNode.java Wed Apr 15 11:14:58 2020 +0800 5.2 +++ b/src/jdk/nashorn/internal/runtime/regexp/joni/ast/StringNode.java Wed Apr 15 11:49:54 2020 +0800 5.3 @@ -27,7 +27,6 @@ 5.4 5.5 private static final int NODE_STR_MARGIN = 16; 5.6 private static final int NODE_STR_BUF_SIZE = 24; 5.7 - public static final StringNode EMPTY = new StringNode(null, Integer.MAX_VALUE, Integer.MAX_VALUE); 5.8 5.9 public char[] chars; 5.10 public int p; 5.11 @@ -36,7 +35,13 @@ 5.12 public int flag; 5.13 5.14 public StringNode() { 5.15 - this.chars = new char[NODE_STR_BUF_SIZE]; 5.16 + this(NODE_STR_BUF_SIZE); 5.17 + } 5.18 + 5.19 + private StringNode(int size) { 5.20 + this.chars = new char[size]; 5.21 + this.p = 0; 5.22 + this.end = 0; 5.23 } 5.24 5.25 public StringNode(final char[] chars, final int p, final int end) { 5.26 @@ -51,6 +56,13 @@ 5.27 chars[end++] = c; 5.28 } 5.29 5.30 + /** 5.31 + * Create a new empty StringNode. 5.32 + */ 5.33 + public static StringNode createEmpty() { 5.34 + return new StringNode(0); 5.35 + } 5.36 + 5.37 /* Ensure there is ahead bytes available in node's buffer 5.38 * (assumes that the node is not shared) 5.39 */