Showing private lists seems to be broken

Hi,

as I only have one private list, I’ve set PREFERENCEPAGE_SHOW_PRIVATE_LISTS to 1 to show this list on the preferences page.
This feature seems to be broken on several pages:

  1. After opening the preferences link, the private list is visible and hase an active checkbox. But after clicking the update button, the user is removed from the list.

  2. The confirmation page does not show the private list.

Do I have to modify something else beside setting PREFERENCEPAGE_SHOW_PRIVATE_LISTS to 1 in order to have this feature working properly?

Thank you in advance!

@Torophal A change made last year seems to have broken the preferences page when the subscriber belongs to a private list. The subscriber is removed from all their lists then re-added only to those that are not private (which was the change)

I don’t know the background to that change

@Torophal I think the problem might be this line in file admin/subscribelib2.php, line 530

        if ($val == 'signup' && !isPrivateList($key)) {

Try changing it to

        if ($val == 'signup') {

Also line 749

    if (preg_match("/^\d+$/", $listid) && !isPrivateList($listid)) {

change to

    if (preg_match("/^\d+$/", $listid)) {