Compatibility error between sudo and mixedgroup plugins
Compatibility error between sudo and mixedgroup plugins
Description
There is a compatibility error between sudo and mixedgroup plugin triggering an error when adding, deleting or editing a group with 2+ users in it already. The error only happens when sudo and mixedgroup plugins are installed altogether. Also it sometimes takes multiples retry to successfully edit the group once the error is showing up.
Distribution Name and Version
Ubuntu 18.04 bionic
FusionDirectory Version
1.3
Plugin with the defect
Sudo & Mixedgroup
PHP version used
7.2
Origin of php packages
Distribution packages
Steps to Reproduce
- Install both plugins and use rfc2307bis schema so you can use mixedgroup
- Create a group and add one user in it
- Try to add one more user to the group
- Try to delete the user from the group
- Try editing any data once they are at least two users in the group
Expected behavior:
The group being edited successfully without any errors since the users are valid.
Actual behavior:
An error is showing up blocking you from editing the group.
Reproduces how often:
everytime you try to edit a group with already 2+ members
Additional Information
Error showing up:
Fatal error: Uncaught Error: Call to a member function hasChanged() on null in /usr/share/fusiondirectory/include/simpleplugin/class_simplePlugin.inc:1897 Stack trace: #0 /usr/share/fusiondirectory/include/simpleplugin/class_simplePlugin.inc(1632): simplePlugin->attributeHaveChanged('cn') #1 /usr/share/fusiondirectory/include/simpleplugin/class_simplePlugin.inc(1543): simplePlugin->browseForeignKeys('handle_move', NULL, NULL) #2 /usr/share/fusiondirectory/include/simpleplugin/class_simplePlugin.inc(1397): simplePlugin->handleForeignKeys() #3 /usr/share/fusiondirectory/include/simpleplugin/class_simplePlugin.inc(1350): simplePlugin->handle_post_events('modify') #4 /usr/share/fusiondirectory/include/simpleplugin/class_simplePlugin.inc(1232): simplePlugin->post_save() #5 /usr/share/fusiondirectory/plugins/admin/ogroups/mixedgroups/class_mixedGroup.inc(180): simplePlugin->save() #6 /usr/share/fusiondirectory/include/simpleplugin/class_simpleTabs.inc(430): mixedGroup->save() #7 /usr/share/fusiondirectory/plugins/admin/groups/t in /usr/share/fusiondirectory/include/simpleplugin/class_simplePlugin.inc on line 1897