[Python] Fix generating __init__.py for invalid path (#8810)

This tried to generate from a directories "MyGame/Sample/"
for a empty path_ in M, MyGame & MyGame/Sample.
Which is incorrect since we want to start with the first
kPathSeparator `/` and not position 1.
This commit is contained in:
Felix 2025-12-01 00:30:55 +01:00 committed by GitHub
parent 807b43c0d7
commit 49d2db93a7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2884,7 +2884,8 @@ class PythonGenerator : public BaseGenerator {
parser_.opts.one_file ? path_ : namer_.Directories(ns.components);
EnsureDirExists(directories);
for (size_t i = path_.size() + 1; i != std::string::npos;
for (size_t i = directories.find(kPathSeparator, path_.size());
i != std::string::npos;
i = directories.find(kPathSeparator, i + 1)) {
const std::string init_py =
directories.substr(0, i) + kPathSeparator + "__init__.py";