Godot: UPNP.add_port_mapping()は、delete_port_mapping()に関するエラーを出力します

作成日 2020年04月23日  ·  1コメント  ·  ソース: godotengine/godot

Godotバージョン:
3.2.1安定

バージョンを含むOS /デバイス:
ウインドウズ10
私が使用しているルーターはOrangeLiveboxですが、description.xmlのどの部分が有用で安全に共有できるかわかりません。 また、管理者アクセス権がありません。

問題の説明:
ポートマッピングを追加すると、delete_port_mappingに関するエラーが出力されます。 ポートマッピングは適切に追加されているようで、後でエラーなしで削除できます。
この質問で説明されている問題https://godotengine.org/qa/65365/delete_port_mapping-condition-i-0-is-true
E 0:00:03.211 delete_port_mapping: Condition "i != (0)" is true. Returned: UPNP::upnp_result(i) <C++ Source> modules/upnp/upnp_device.cpp:90 @ delete_port_mapping() <Stack Trace> UPNPTest.gd:8 @ _ready() 出力します

再現する手順:
以下を実行します。
var upnp = UPNP.new()
upnp.discover()
upnp.add_port_mapping(4200)
最小限の複製プロジェクト:
upnpバグrepro.zip

bug network

最も参考になるコメント

これは、私のプロジェクトでも発生しているかなり厄介なバグです。

編集:誰かがこれと同じバグを抱えていてこの問題を見つけた場合は、ポートマッピングをデフォルトゲートウェイに直接追加することでエラーを回避できます。これは、upnp.add_port_mappingと同じことですが、存在しないポートを削除しようとすることはありません。

upnp = UPNP.new()
var result = upnp.discover()
if result == UPNP.UPNP_RESULT_SUCCESS:
    var gateway = upnp.get_gateway()
    gateway.add_port_mapping(4200)

>すべてのコメント

これは、私のプロジェクトでも発生しているかなり厄介なバグです。

編集:誰かがこれと同じバグを抱えていてこの問題を見つけた場合は、ポートマッピングをデフォルトゲートウェイに直接追加することでエラーを回避できます。これは、upnp.add_port_mappingと同じことですが、存在しないポートを削除しようとすることはありません。

upnp = UPNP.new()
var result = upnp.discover()
if result == UPNP.UPNP_RESULT_SUCCESS:
    var gateway = upnp.get_gateway()
    gateway.add_port_mapping(4200)

このページは役に立ちましたか?
0 / 5 - 0 評価