diff --git a/scene/resources/packed_scene.cpp b/scene/resources/packed_scene.cpp index 64d80970d78..2017e0823f5 100644 --- a/scene/resources/packed_scene.cpp +++ b/scene/resources/packed_scene.cpp @@ -731,6 +731,7 @@ Error SceneState::_parse_connections(Node *p_owner,Node *p_node, Map _signals; p_node->get_signal_list(&_signals); + _signals.sort(); //ERR_FAIL_COND_V( !node_map.has(p_node), ERR_BUG); //NodeData &nd = nodes[node_map[p_node]]; @@ -740,6 +741,9 @@ Error SceneState::_parse_connections(Node *p_owner,Node *p_node, Map conns; p_node->get_signal_connection_list(E->get().name,&conns); + + conns.sort(); + for(List::Element *F=conns.front();F;F=F->next()) { const Node::Connection &c = F->get(); diff --git a/scene/resources/sample_library.cpp b/scene/resources/sample_library.cpp index 5b70ee0e119..73517b180e3 100644 --- a/scene/resources/sample_library.cpp +++ b/scene/resources/sample_library.cpp @@ -122,9 +122,17 @@ bool SampleLibrary::has_sample(const StringName& p_name) const { void SampleLibrary::_get_property_list(List *p_list) const { + + List tpl; for(Map::Element *E=sample_map.front();E;E=E->next()) { - p_list->push_back( PropertyInfo( Variant::DICTIONARY, "samples/"+E->key(),PROPERTY_HINT_RESOURCE_TYPE,"Sample",PROPERTY_USAGE_NOEDITOR ) ); + tpl.push_back( PropertyInfo( Variant::DICTIONARY, "samples/"+E->key(),PROPERTY_HINT_RESOURCE_TYPE,"Sample",PROPERTY_USAGE_NOEDITOR ) ); + } + + tpl.sort(); + //sort so order is kept + for(List::Element *E=tpl.front();E;E=E->next()) { + p_list->push_back(E->get()); } }