From: Jo-Philipp Wich Date: Fri, 30 Sep 2022 07:59:39 +0000 (+0200) Subject: luci-app-opkg: relax dependency parsing X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=84ba6a5c36072f74721d535104735757b005c8d6;p=project%2Fluci.git luci-app-opkg: relax dependency parsing Align depdendency parse logic with opkg to properly process certain malformed dependency specifications. In particular do not require a depdendency specification to end after the closing paren of a version constraint and perform non-greedy matching in order to extract the first version constraint only. Fixes: #5997 Ref: https://forum.openwrt.org/t/x/138328 Signed-off-by: Jo-Philipp Wich --- diff --git a/applications/luci-app-opkg/htdocs/luci-static/resources/view/opkg.js b/applications/luci-app-opkg/htdocs/luci-static/resources/view/opkg.js index 311078a22c..dd69161c82 100644 --- a/applications/luci-app-opkg/htdocs/luci-static/resources/view/opkg.js +++ b/applications/luci-app-opkg/htdocs/luci-static/resources/view/opkg.js @@ -601,7 +601,7 @@ function renderDependencies(depends, info, flat) if (deps[i] === 'libc') continue; - if (deps[i].match(/^(.+)\s+\((<=|>=|<<|>>|<|>|=)(.+)\)$/)) { + if (deps[i].match(/^(.+?)\s+\((<=|>=|<<|>>|<|>|=)(.+?)\)/)) { dep = RegExp.$1.trim(); vop = RegExp.$2.trim(); ver = RegExp.$3.trim();