Fix possible recursion in calculate-lib-3

atratsevskiy
parent 3ee5671558
commit 6979978116

@ -6,6 +6,7 @@ AUX calculate-lib-3.0.0-accelerate_package_configure.patch 990 SHA256 13fcd2df01
AUX calculate-lib-3.0.0-fix_variables.patch 3431 SHA256 2ddf6bf1c277dbd9765d78589e89d95ad942489b22958e6ae93d3f1d1cfbeacb SHA512 7c7953fcd88207dea7b463371a6579e6270bfbad41bd6028e9298c1d89759a0adebc91ed5387e0a55fba35539ab8699c1fc20d2109c6101f13c6950072325fbd WHIRLPOOL f96bdf6482b049db5ff6d6d5e9cb6e5a95960047f61df049260e74951ec4e13304506216453aecb6c1fa288032f5ec753c3db9041e6168790321ce338c8ba877
AUX calculate-lib-3.0.0-r1.patch 2983 SHA256 bef063b3b4f77157cf1d002a41467d3758d9c6d8687c75bdb9dd6e35f17a994d SHA512 4ad78c447ed696c27f4a706f441392e81bb30fe5426dbb48411a13df5bf9102719fe8848bdee74430f0187eb8b2719f7a8b8883289d93bd7e35753b3a3d39a0d WHIRLPOOL 3f33f46e666054bd6d6c3e2f8e35a7c18d6c500cfd7c3bf6bb6d3db2a101ab5f333d164506e82b82c78ea07c6627617c93ffc62435a9fb8f5c8159af397a4afc
AUX calculate-lib-3.0.1-accelerate_package_configure.patch 1333 SHA256 362b35a398650b460f076f4384ae01ebdaf2c847b9f503201ea7b750ea487fe1 SHA512 df17294c758ef09969fe851e6c50e5c96475fa60e0a2d3bd53ec66abbeffcb1a029a32afac2c36ca4d2a8d09c89a1b4d2af78abf3bb121f5e011843a57ecf74a WHIRLPOOL b862c07f398f4791ff99f2d7b4a29ae940c463807e266aaea4feec7918aadc23ae3a5c54dd5d8b28f54a4e091cda2f26830f0e9c5e671194edeff80a548b9073
AUX calculate-lib-3.0.1-fix_invalidate_recursion.patch 1334 SHA256 fffc26d0505dcd5834782aa4abe58dee795684816d4f6e17f9431e6866fac10e SHA512 3901ac162585ec345e8325d3d27bc65e1b8e86b8f24aa8588653a696b96201b3337977f89cfa6fd6a4bc70e43f02edf4ded01a70a2a91d4dc26cbc2a276ebccd WHIRLPOOL 4306f36d1b59d44b1c0c1d192ab164d04d82f8d8f21663c7398f1408c911e61c9e806afdfd69cb250302c48d4f5ea2319a4474b2e3adbfab00e00d06408f4b0d
DIST calculate-lib-2.1.11.tar.bz2 61687 SHA256 62976c08d4fb4810389ace6f5a99abb5a962f6c8d9053ff943d0669480fb5599 SHA512 e3bc2168a55367cf19ad3a27921b53e5e845643238bf171209ab29752c91b5d4d338a2120774764ac1c79abd93f2deff8680f8faa1407940984ea9fd6a199e67 WHIRLPOOL 0ced92ea493dd8db02b0ae1514ebbb51ee76dc6f441b4a38c984c39da2121fb81dd1f2e840c4c5b71a117a12817a2a269d85676288202aa9801f69727e3338dc
DIST calculate-lib-2.2.29.tar.bz2 120378 SHA256 fc79bf29059ffb1519b6356cba34ebecb2e8c3222a29735f479254c371d363a3 SHA512 dc3c2c20cf0c5389b412b0cd2cba316b3d2367e981e147b3a94b6502ba329b598c7ccad5cd3462b3d7e884d05574c99b0e2e39df63e51d22221b86b783cb0925 WHIRLPOOL b3cdf6010c48d7a86a9f5a0c72effa8f0cc8ec0186fa28977132211dcaa5a3fe4a20ad3ec0b556478a9def1dc0e7c15404e3ab38080f986a4620634ee6570462
DIST calculate-lib-3.0.0.tar.bz2 111059 SHA256 4b8019056897a390e522b46a4ba9631b105ade8ff670146d69fa268235f41454 SHA512 5208aa2f002fbd293d3a18994334da87c75fa9501adec257412a76d1353559a22dd86f6198faa2d29ef53e48178c86d12b98df346733e8eb6cb4e33ffe2ce833 WHIRLPOOL 102f9d6829ecd201d3f594061c38a7c08c06aeb80b512e2746005e34b3748e75514779466ad76379d142711c305381ed92b1617be9fdb12e4f96ba49f2330166
@ -21,6 +22,7 @@ EBUILD calculate-lib-3.0.0-r2.ebuild 876 SHA256 4223d10b987a9e9881ab7abbec85e5e7
EBUILD calculate-lib-3.0.0-r3.ebuild 998 SHA256 14bffde5023e6f02b30652af6089fe6e66b105e8776b021ca6cad76bc035d542 SHA512 85a5a1197d9c09247ecb6cd832578a492d9d08c969781ba460b225b51d2a90dae494f903bdb0d39c5208bec4c346fc4b921ca55a457220751180ea7d377522fb WHIRLPOOL 14dbc41434bac12688e8669097a65639761944b29368af4c289c671e230166238ff3125c11502d54f0c89e37b99ad33499cb05e2cdb7b4bd11d5db968ea3031f
EBUILD calculate-lib-3.0.0.ebuild 690 SHA256 c89c29f5de3f70146e98f15035366506933f03e8a5066b1ad55aeccbebdeae2c SHA512 a7277c2e5fa64a5e5840be7fc8d3df9a31f41926386c5fe6a9bed31eeed6321af5881c218d9ce7eeb12aee518edb682b438e10397dcb815cc63645100430e43e WHIRLPOOL 8f19e4d46381e26fec81e20fa35599f4658b3891d6372c921a8b1354ad3b1821ea9c78f71caebf54610e0b5aacfb6e6ded018e155e1979322406a0ac1e823d09
EBUILD calculate-lib-3.0.1-r1.ebuild 857 SHA256 a4ece34a0fa50d3259152282d6c349dc5b5b048d3c060bb156702556921400c8 SHA512 8c694ce96ae67a33ff830ffee73bc80872804504134ae5676518b7f189258de22ab02a57a3865509dda6a457b23cc56c28fe721c03dbdefc98822aea476224e7 WHIRLPOOL af55fd58ca91608fec3acaf67a259104c3453f27285ea7825ecb1212f20606f79155b4b25a39c384ad85ea1b8efc21d891690c713252e93577db4da16b684701
EBUILD calculate-lib-3.0.1-r2.ebuild 964 SHA256 7f5b62d7146c3fc2f4d66a82b44de491e61e1a81c355eef6c37715f28b3c6228 SHA512 f0d21c9fd65ec162cf733b72521c3963ba70bddf7369385ec4448c88d951100ca3822730f7f52427d2273249296a2e21b6deb5faa7c02b44f741a5e57ff6e36d WHIRLPOOL a791c9639fdfd3fdc1e0424931ea4d7f258adce5643af10cc5ff006c78314f28fe234e8d54539303503bcab211b2b6897bf1699f319a6551b513f8bc3385e5aa
EBUILD calculate-lib-3.0.1.ebuild 857 SHA256 0e0db6c04e0d909f1250c75ffceaf378a0c54b824005c24be0b8a350b4207ea8 SHA512 c837df950148f048b993485e558c1b2c873e08fc69cc65e6b14ea95a0a273c5f6d01c52e25d7d6c65fe8e66bc56857a0c4100d3288923bcc38d3db500fc38c8f WHIRLPOOL 6c42e71cd4644c8d2475171d3a067f0579579253d5012ae20576a87e51524a8190953c51d7959bd111968a915a979cd85e00bec2edda270aa76e1b74c9c5a96c
EBUILD calculate-lib-3.0.9999.ebuild 719 SHA256 5de5bc693735cbf24c7ceeb9882ed338c9cb186b5ea6be18e279d2102ec4dac3 SHA512 896352c27de758e598940c4d447d162911aba3c5e5650a447b10a5b96fc16615917caba5113aba4a3cd8b2e71c382d4089ebe568567c35c9068f116dee236262 WHIRLPOOL 1d78117009ec3c84d1e93a2f8f2df2c313c6b178832135fe5353e04ddc141e72185962ac29ded1eefd058eefbb20e0f81305eb659dfaafcda45f1614b40da63f
MISC ChangeLog 29678 SHA256 2d3176ee3c60fb474f938b05f6118e17b06f600a6a654def33754f15c32e78e2 SHA512 7f8039d00f0a4cfffe9d4a016ce451a51586d92c195693c24dc3c3498a4133c138dce3a6bf687ee64c9e613eafbe7807199dae515b221aab329490770e7ea1a3 WHIRLPOOL f0859381bfc90c257cf02aee15392776a612b25d1299a3703fa091aedce9bfc0dcfe8dba42265de3bd2e904cd122a62c9f21622fd189a4c32bf088f7ec8e9307

@ -0,0 +1,38 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="3"
SUPPORT_PYTHON_ABIS="1"
PYTHON_DEPEND="2:2.7"
RESTRICT_PYTHON_ABIS="2.4 2.5 2.6 3.*"
inherit distutils eutils
SRC_URI="ftp://ftp.calculate.ru/pub/calculate/calculate3/${PN}/${P}.tar.bz2"
DESCRIPTION="The library for Calculate 3"
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
LICENSE="Apache-2.0"
SLOT="3"
KEYWORDS="amd64 x86"
IUSE="minimal"
DEPEND="!minimal? ( dev-python/py-smbpasswd )
>=dev-python/pyxml-0.8
sys-apps/iproute2
sys-apps/pciutils
sys-fs/lvm2
sys-fs/mdadm
dev-python/pyinotify
sys-apps/file[python]"
RDEPEND="${DEPEND}"
src_unpack() {
unpack "${A}"
cd "${S}"
# accelerate apply templates on pkg_preinst
epatch "${FILESDIR}/calculate-lib-3.0.1-accelerate_package_configure.patch"
# fix posible infinite recursion
epatch "${FILESDIR}/calculate-lib-3.0.1-fix_invalidate_recursion.patch"
}

@ -0,0 +1,36 @@
diff --git a/calculate/lib/datavars.py b/calculate/lib/datavars.py
index 835b649..c84e3af 100644
--- a/calculate/lib/datavars.py
+++ b/calculate/lib/datavars.py
@@ -391,15 +391,22 @@ class Variable:
force : boolean=False
Drop value also for after manual set
"""
- if force or not self.wasSet:
- self.wasSet = False
- self.invalid = True
- for var in self.reqVars:
- var.invalidate()
- for var in self.reqCheck:
- var.untrusted = True
- self.reqVars = []
- self.reqCheck = []
+ # fix possible infinite recursion on invalidating
+ if not self.processInvalidate and (force or not self.wasSet):
+ try:
+ # mark variable that in invalidation now
+ self.processInvalidate = True
+ self.wasSet = False
+ self.invalid = True
+ for var in self.reqVars:
+ var.invalidate()
+ for var in self.reqCheck:
+ var.untrusted = True
+ self.reqVars = []
+ self.reqCheck = []
+ finally:
+ # unmark process invalidate
+ self.processInvalidate = False
@classmethod
def isTrue(self,value):

@ -22,6 +22,7 @@ EBUILD calculate-utilities-3.0.1-r1.ebuild 598 SHA256 d77d8341e6fa0e20d47813e7f1
EBUILD calculate-utilities-3.0.1-r2.ebuild 601 SHA256 f37606556a56aaccb1ee4973d4eb2b70f6755382e52864ca5416c7f6e0d099a6 SHA512 288f97f7f431cf31bd5afbe86aed7480808f012f5f32f5b8795c24dccfc5b0a4a95ae01f3f70ac07789aabab85f610db16a65f393d38b7684a8d28eb0ba409fc WHIRLPOOL 1cd46d62f2fbfdc919dae3285bb53266223748cd31477bff9505941e2db5e7e0f5eb9989f19cd8228e7b4e62dc58155019af2d4bafb201a4e63bb0380c3c8d64
EBUILD calculate-utilities-3.0.1-r3.ebuild 601 SHA256 e20159d70e22245be54739873f8a69dcafaba47c8e096d8456fad67f58e27ff2 SHA512 85bcc78b705331130f5611ce19dccc1a379dbab7069f9e42c16437a9ff3aaab1e24586328fb64e44aa6b54fd49d76e34f891b5897605b70582a2cfd08d8dc9e4 WHIRLPOOL c4052424cf24fae0d65655585907cac02e283eb7b3301c5a937761e4b5f170d2c8c316e6a18bc31cd1e7bf3aed3964c9a97e343675087e93e7829ebdedb19f3c
EBUILD calculate-utilities-3.0.1-r4.ebuild 601 SHA256 4813c42d6c496387c8e42b7a5776d2f3ff5cc9e8c3e3c44bbf96d69a2479c99f SHA512 1e4ef46c158eeaacd629d87a0dabfd38d5fcdcdee150773c6b6fd8414ca8c974c50b27730e738bf56c6ef6feae25ae9c07609fcc5c3a3690ea3233f40209f796 WHIRLPOOL 8b30b33ba4e07a472e1b81a134f2096823b88217466b9f8806e976edfb587b67d1c6ab64e9411f1dcbc1739d8bd3a7a29e80b806c64259d763854c351d57f4dd
EBUILD calculate-utilities-3.0.1-r5.ebuild 601 SHA256 64ce97d9dce312180798e52280fe9001b4aa3a7b007711982188a20237bf894d SHA512 2895f8c6f010e5074b74eb2eed25fc9f037296007c6dbe10c0bad83cc0f655a2ef16080adb482dd57119d491edf0d74b80d8a069d09d6307d7f1bead0e64ffb1 WHIRLPOOL 356a479668de03200bbc00d8211ca2e1a05c67838785a68b7163cfd85c2897513dcb6a6d160bac92e2388981a59c873df8936382e7ff024ea98a6e54a8838261
EBUILD calculate-utilities-3.0.1.ebuild 595 SHA256 b3e4df6ee7d48945a54ee055584c1ea20a5719a6928762cb5b58acaed866250a SHA512 4443b4981c96a01fb336166d0276516605a2c47db65aefcceae6b76da29f000f7432588e4cfdcfcca90829fb77ef371311126f2daae9dee5b3a91bc1caff56a5 WHIRLPOOL 1c716d46504049ed613cfeea510270ee00a94843a2cc138d27565c4ea9306113aaaa0be5d938048d599607f3d45f8b21086841ff477d17c179eeea154ab54083
EBUILD calculate-utilities-3.0.9999.ebuild 552 SHA256 d6519794625722093224801b703a0363929a034a1189b46a2c01cc2327138e59 SHA512 6dbb450db2ab1003a79ff32878c8928f93f53f0af7c46707d073dcff4f2befebc9fbcf5085b396fa4625735c2a987f041c4345884edde0924c1bc14c5d3f92c8 WHIRLPOOL 8403f0072318a3e425df82cb5480df941854044f0d6b04280a6ad1b9bdc1beff907127df44aaecd2818cdcf8399a9463c64a08bcfc34583bac4f8317d9294758
MISC ChangeLog 38731 SHA256 7e70a0bc1f3b34c0011f3874773a698a4bb96eb6d3dad10903575156bb8578bc SHA512 2de466ea990b9eac702b81fd097c3f5d06d1f4db1a4bd1d1b7380b45e551f6fd62c16564ecfc810246157d3ef1113ae373041580e70981d44752e50ed6134bc0 WHIRLPOOL 5ca0cee1ad0e9419f91ec11a9629b9a29db9fcbed4f5ae0aef1f8a2170ff58112c8580d61884c56ee410a0abc201fa8f4419cea35077fc8bb84e733f6fa6f4db

@ -0,0 +1,24 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI=4
DESCRIPTION="Calculate Utilities meta package"
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
SRC_URI=""
LICENSE="Apache-2.0"
SLOT="3"
KEYWORDS="amd64 x86"
IUSE="cl_consolegui cl_console"
RDEPEND="${RDEPEND}
=sys-apps/calculate-install-3.0.1-r3
=sys-apps/calculate-i18n-3.0.1
=sys-apps/calculate-lib-3.0.1-r2
=sys-apps/calculate-core-3.0.1
cl_consolegui? ( =sys-apps/calculate-console-gui-3.0.1 )
cl_console? ( =sys-apps/calculate-console-3.0.1 )
"
Loading…
Cancel
Save