Godot: UPNP.add_port_mapping () renvoie une erreur concernant delete_port_mapping ()

Créé le 23 avr. 2020  ·  1Commentaire  ·  Source: godotengine/godot

Version Godot:
3.2.1 stable

OS / appareil, y compris la version:
Windows 10
Le routeur que j'utilise est une Livebox Orange, je ne sais pas quelles parties de la description .xml pourraient être utiles et sûres à partager. De plus, je n'y ai pas accès administrateur.

Description du problème:
L'ajout d'un mappage de port génère une erreur concernant delete_port_mapping. Le mappage de port semble être correctement ajouté et peut être supprimé plus tard sans erreur.
Problème décrit dans cette question https://godotengine.org/qa/65365/delete_port_mapping-condition-i-0-is-true
Sorties 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()

Étapes à suivre pour reproduire:
Exécutez ce qui suit:
var upnp = UPNP.new()
upnp.discover()
upnp.add_port_mapping(4200)
Projet de reproduction minimale:
repro.zip de bogue upnp

bug network

Commentaire le plus utile

C'est un bug assez ennuyeux qui se produit également dans mon projet.

EDIT: Si quelqu'un a ce même bogue et trouve ce problème, vous pouvez contourner l'erreur en ajoutant le mappage de port directement à la passerelle par défaut, ce qui est la même chose que upnp.add_port_mapping, sans essayer de supprimer un port non existant.

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

>Tous les commentaires

C'est un bug assez ennuyeux qui se produit également dans mon projet.

EDIT: Si quelqu'un a ce même bogue et trouve ce problème, vous pouvez contourner l'erreur en ajoutant le mappage de port directement à la passerelle par défaut, ce qui est la même chose que upnp.add_port_mapping, sans essayer de supprimer un port non existant.

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

Cette page vous a été utile?
0 / 5 - 0 notes