If a site is running current-CVS, and they are not using subdomains for their skins, stories are not displayed correctly within their given primaryskin.
Example:
http://apple.slashdot.org/article.pl?sid=07/05/16/0043245
and
http://slashdot.org/article.pl?sid=07/05/16/0043245§ion=apple
should be transparent to the user. Now, given that Slashdot's nexus-topic-skin for the Apple section has a hostname, slashcode happily redirects the user to
http://apple.slashdot.org/article.pl?sid=07/05/16/0043245§ion=apple
if you hit the second URL, above, as it should.
However, if a site's not using subdomains, that story would not display as being within the 'Apple' section. It can redirect for all it's worth, it's just never going to be shown to the user correctly.
The following patch changes the behavior in article.pl such that if the current story's primary skin's nexus has no subdomain, it sets the currentskin (via setCurrentSkin) to $story_skin->{skid}. That way, when header() et all are called the story's being shown within that section, and any sectional-css will be included in the header, etc etc.
patch to force section for stories in a section with no subdomain