"Follow quads" behaves strangely when unrapping two identical textured meshes

Here’s a bit of strangeness from unwrapping with Follow Quads. This is an escalator, with the usual moving handrails, being set up for Second Life. The diamond pattern is supposed to appear on the top of the railing surface, but not the sides. Each railing is an extrusion along a loop path, and they’re identical.

So I selected a face on the top of the left railing, and then did a “select by material” to get all the railing material, did UV->Reset and UV->Follow Quads->Length. Left railing comes out fine, with the pattern equally spaced along the railing. Right railing, all the rows of quads in the long (X) direction are mapped to the same area in the UV map. Which is just wrong.

If I repeat this, starting by selecting a face on the right railing, I get the reverse - right railing correct, left railing wrong.

Yes, I can work around this by UV-unwrapping one railing at a time, but do I have to? Is this a bug, intended behavior, or is it that “follow quads” doesn’t work right for two disconnected mesh sections?

I want to mechanize this, because I need to turn out about 20 of these escalators in different sizes. For each size, the middle part of the escalator gets stretched while the rest is untouched, after which I have to rescale the UVs to be uniform again. Suggestions?

Follow active quads does exactly that: it follows your active selection. It does not jump between separate meshes. It does not map triangles or ngons, and it does not jump over them-- it will stop at them.

Why not? Because it wouldn’t have any idea where to put quads that are unconnected. They could go anywhere. Nor would it have any idea how to scale disconnected quads, since there’s no adjacent quad to which it should get scaled.

What you should probably be looking into is the use of a mirror modifier.