- urldata, pd, fn = getdata(d)
- if len(urldata) == 0:
- src_uri = bb.data.getVar('SRC_URI', d, 1).split()
- for url in src_uri:
- if url not in urldata:
- ud = FetchData(url, d)
- for m in methods:
- if m.supports(url, ud, d):
- ud.init(m, d)
- break
- urldata[url] = ud
- if ud.method.suppports_srcrev():
- scms.append(url)
- ud.setup_localpath(d)
- else:
- for u in urldata:
- ud = urldata[u]
- if ud.method.suppports_srcrev():
- scms.append(u)
+ # Only call setup_localpath on URIs which suppports_srcrev()
+ urldata = init(bb.data.getVar('SRC_URI', d, 1).split(), d, False)
+ for u in urldata:
+ ud = urldata[u]
+ if ud.method.suppports_srcrev():
+ if not ud.setup:
+ ud.setup_localpath(d)
+ scms.append(u)