string URI = Tags.FindS("URL");
if (!Parse->FixupURI(URI))
return _error->Error(_("Malformed stanza %u in source list %s (URI parse)"),i,Fd.Name().c_str());
string URI = Tags.FindS("URL");
if (!Parse->FixupURI(URI))
return _error->Error(_("Malformed stanza %u in source list %s (URI parse)"),i,Fd.Name().c_str());
- string const Dist = Tags.FindS("Dist");
- string const Section = Tags.FindS("Section");
+
+ string Dist = Tags.FindS("Dist");
+ Dist = SubstVar(Dist,"$(ARCH)",_config->Find("APT::Architecture"));
+
// check if there are any options we support
const char* option_str[] = {
"arch", "arch+", "arch-", "trusted" };
// check if there are any options we support
const char* option_str[] = {
"arch", "arch+", "arch-", "trusted" };
std::vector<std::string> list;
if (Section.find(","))
list = StringSplit(Section, ",");
std::vector<std::string> list;
if (Section.find(","))
list = StringSplit(Section, ",");