If the script is called with ok=1 (hum... yes...), the script will add or modify a hold placed on the bibliographic records existing in the routing list.
So from /serials/
serials-collection.pl?subscriptionid=1, click on "Print list" you get a pop-up with a print and close button.
When the pop-up is generated, we already have the ok=1 and the go through:
66: my ($count2,@bibitems) = GetBiblioItemByBiblioNumber($biblio);
Then later:
96 AddReserve($branch,$routing->{borrowernumber},$biblio,\@bibitems,$routing->{ranking}, undef, undef, $notes,$title);
The problem is that GetBiblioItemByBiblioNumber will always return only 1 value (for obvious reasons) and @bibitems will always be empty => reserve is placed at bib level