diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b17c81df..700ff5b60 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -61,6 +61,7 @@ All notable changes to this project will be documented in this file. - AS1/2 Debugger tooltips exception - [#2131] UseOutline flag for DefineEditText - Wordrapping long words in DefineEditText +- [#2133] Linux/Mac - ffdec.sh not correctly parsing java build number on javas without it ### Changed - [#2120] Exported assets no longer take names from assigned classes if there is more than 1 assigned class @@ -3329,6 +3330,7 @@ Major version of SWF to XML export changed to 2. [#2025]: https://www.free-decompiler.com/flash/issues/2025 [#2078]: https://www.free-decompiler.com/flash/issues/2078 [#2053]: https://www.free-decompiler.com/flash/issues/2053 +[#2133]: https://www.free-decompiler.com/flash/issues/2133 [#2120]: https://www.free-decompiler.com/flash/issues/2120 [#1130]: https://www.free-decompiler.com/flash/issues/1130 [#1220]: https://www.free-decompiler.com/flash/issues/1220 diff --git a/resources/ffdec.sh b/resources/ffdec.sh index 6d055695b..bd34678be 100644 --- a/resources/ffdec.sh +++ b/resources/ffdec.sh @@ -35,40 +35,40 @@ search_jar_file() { } check_java_version () { - JVER1=$(echo $JAVA_VERSION_OUTPUT | sed 's/java version "\([0-9]*\)\.[0-9]*\.[0-9]*_[0-9]*".*/\1/') - JVER2=$(echo $JAVA_VERSION_OUTPUT | sed 's/java version "[0-9]*\.\([0-9]*\)\.[0-9]*_[0-9]*".*/\1/') - JVER3=$(echo $JAVA_VERSION_OUTPUT | sed 's/java version "[0-9]*\.[0-9]*\.\([0-9]*\)_[0-9]*".*/\1/') - JVER4=$(echo $JAVA_VERSION_OUTPUT | sed 's/java version "[0-9]*\.[0-9]*\.[0-9]*_\([0-9]*\)".*/\1/') + JVER1=$(echo $JAVA_VERSION_OUTPUT | sed 's/java version "\([0-9]*\)\.[0-9]*\.[0-9]*\(_[0-9]*\)\?".*/\1/') + JVER2=$(echo $JAVA_VERSION_OUTPUT | sed 's/java version "[0-9]*\.\([0-9]*\)\.[0-9]*\(_[0-9]*\)\?".*/\1/') + JVER3=$(echo $JAVA_VERSION_OUTPUT | sed 's/java version "[0-9]*\.[0-9]*\.\([0-9]*\)\(_[0-9]*\)\?".*/\1/') + JVER4=$(echo $JAVA_VERSION_OUTPUT | sed 's/java version "[0-9]*\.[0-9]*\.[0-9]*\(_\([0-9]*\)\)\?".*/\2/' | sed 's/^$/0/') - if [ "$JVER1" -gt $REQ_JVER1 ]; then - return 0 - elif [ "$JVER1" -lt $REQ_JVER1 ]; then - return 1 - fi + if [ "$JVER1" -gt $REQ_JVER1 ]; then + return 0 + elif [ "$JVER1" -lt $REQ_JVER1 ]; then + return 1 + fi - if [ "$JVER2" -gt $REQ_JVER2 ]; then - return 0 - elif [ "$JVER2" -lt $REQ_JVER2 ]; then - return 1 - fi + if [ "$JVER2" -gt $REQ_JVER2 ]; then + return 0 + elif [ "$JVER2" -lt $REQ_JVER2 ]; then + return 1 + fi - if [ "$JVER3" -gt $REQ_JVER3 ]; then - return 0 - elif [ "$JVER3" -lt $REQ_JVER3 ]; then - return 1 - fi + if [ "$JVER3" -gt $REQ_JVER3 ]; then + return 0 + elif [ "$JVER3" -lt $REQ_JVER3 ]; then + return 1 + fi - if [ "$JVER4" -lt $REQ_JVER4 ]; then - return 1 - fi + if [ "$JVER4" -lt $REQ_JVER4 ]; then + return 1 + fi - return 0 + return 0 } # Handle symlinks PROGRAM="$0" while [ -L "$PROGRAM" ]; do - PROGRAM=$(readlink -f "$PROGRAM") + PROGRAM=$(readlink -f "$PROGRAM") done pushd "$(dirname "$PROGRAM")" > /dev/null @@ -96,37 +96,37 @@ fi args=(-Djava.net.preferIPv4Stack=true${MEMORY_PARAM}${STACK_SIZE_PARAM} -jar $JAR_FILE "$@") if [ "$(uname)" = "Darwin" ]; then - args=(-Xdock:name=FFDec -Xdock:icon=icon.png "${args[@]}") + args=(-Xdock:name=FFDec -Xdock:icon=icon.png "${args[@]}") fi # Check default java if [ -x "$(which java)" ]; then - JAVA_VERSION_OUTPUT=$(java -version 2>&1) - JAVA_VERSION_OUTPUT=$(echo $JAVA_VERSION_OUTPUT | sed 's/openjdk version/java version/') - check_java_version && exec java "${args[@]}" + JAVA_VERSION_OUTPUT=$(java -version 2>&1) + JAVA_VERSION_OUTPUT=$(echo $JAVA_VERSION_OUTPUT | sed 's/openjdk version/java version/') + check_java_version && exec java "${args[@]}" fi # Test other possible Java locations for JRE_PATH in $LOOKUP_JRE_DIRS; do - if [ -x "$JRE_PATH/bin/java" ]; then - JAVA_VERSION_OUTPUT=$("$JRE_PATH/bin/java" -version 2>&1) - JAVA_VERSION_OUTPUT=`echo $JAVA_VERSION_OUTPUT | sed 's/openjdk version/java version/'` - check_java_version && { - export JRE_PATH - exec "$JRE_PATH/bin/java" "${args[@]}" - } - fi + if [ -x "$JRE_PATH/bin/java" ]; then + JAVA_VERSION_OUTPUT=$("$JRE_PATH/bin/java" -version 2>&1) + JAVA_VERSION_OUTPUT=`echo $JAVA_VERSION_OUTPUT | sed 's/openjdk version/java version/'` + check_java_version && { + export JRE_PATH + exec "$JRE_PATH/bin/java" "${args[@]}" + } + fi done # Failed if [ -x "$(which xmessage)" ]; then - xmessage -nearmouse -file - <