end
end
- local hc, info
- info = e2tool.info()
+ local hc
hc = hash.hash_start()
hash.hash_append(hc, self._server)
hash.hash_append(hc, self._location)
local lid
for licencename in self._licences:iter() do
- local lid, re = licence.licences[licencename]:licenceid(info)
+ local lid, re = licence.licences[licencename]:licenceid()
if not lid then
return false, e:cat(re)
end
end
--- Calculate the LicenceID
--- @param info Info table.
-- @return LicenceID or false on error.
-- @return Error object on failure.
-function licence.licence:licenceid(info)
- assert(type(info) == "table", "info invalid")
-
+function licence.licence:licenceid()
local rc, re, e, hc, fileid
if self._licenceid then
function cvs.cvs_source:sourceid(sourceset)
assert(type(sourceset) == "string" and #sourceset > 0)
- local rc, re, hc, lid, info, licences
+ local rc, re, hc, lid, licences
if self._sourceids[sourceset] then
return self._sourceids[sourceset]
end
- info = e2tool.info()
- assert(type(info) == "table")
-
hc = hash.hash_start()
hash.hash_append(hc, self._name)
hash.hash_append(hc, self._type)
hash.hash_append(hc, self._env:envid())
licences = self:get_licences()
for licencename in licences:iter() do
- lid, re = licence.licences[licencename]:licenceid(info)
+ lid, re = licence.licences[licencename]:licenceid()
if not lid then
return false, re
end
end
function files.files_source:sourceid(sourceset --[[always ignored for files]])
- local hc, info, licences
+ local hc, licences
if self._sourceid then
return self._sourceid
end
- info = e2tool.info()
- assert(info)
-
hc = hash.hash_start()
hash.hash_append(hc, self._name)
hash.hash_append(hc, self._type)
-- all licences
for licencename in self:get_licences():iter() do
- local lid, re = licence.licences[licencename]:licenceid(info)
+ local lid, re = licence.licences[licencename]:licenceid()
if not lid then
return false, re
end
licences = self:get_licences()
for licencename in licences:iter() do
- local lid, re = licence.licences[licencename]:licenceid(info)
+ local lid, re = licence.licences[licencename]:licenceid()
if not lid then
return false, re
end
hash.hash_append(hc, self._type)
hash.hash_append(hc, self._env:envid())
- info = e2tool.info()
- assert(type(info) == "table")
-
licences = self:get_licences()
for licencename in licences:iter() do
- lid, re = licence.licences[licencename]:licenceid(info)
+ lid, re = licence.licences[licencename]:licenceid()
if not lid then
return false, re
end
hash.hash_append(hc, lid)
end
+ info = e2tool.info()
+ assert(type(info) == "table")
+
surl, re = cache.remote_url(info.cache, self._server, self._location)
if not surl then
return false, re