Auch das habe ich schon mal in einem Plugin gesehen: vdr-plugin-live
Wobei da
hours = string(std::max(0,(int)(2 - hours.size())), '0') + hours;
mins = string(std::max(0,(int)(2 - mins.size())), '0') + mins;
gemacht wird, sollte also doch eigentlich kein Problem sein.
Ich würde jetzt mal vorschlagen, die Änderung von #12 zu machen (eventuell vielleicht sogar auch noch ohne DISABLE_TEMPLATES_COLLIDING_WITH_STL) und zu schauen, bei welchen Plugins Probleme auftreten. Dort sollte man dann schauen, ob sich das nicht einfach durch Voranstellen von "std::" lösen lässt. Wäre nett, wenn das jemand mal probieren könnte und hier Bescheid gibt.
Wo kommt das her, doch nicht etwa aus einer speziellen Implementation der STL?
Das kann durchaus sein. Hat aber jahrelang funktioniert. Ich gebe natürlich zu, dass das keine "saubere" Lösung war ;-).
Ich hab jetzt einfach mal mitgenommen das das im VDR eben schon immer so war und dann "never change a running system".