Careful with the findall

Was checking the language server source code:

    (   Find_All
    ->  One_Answer_Goal = findall(Binding_List, @(user:Goal, user), Answers)
    ;
        One_Answer_Goal = ( @(user:Goal, user),
                            Answers = [Binding_List],
                            send_next_result(Respond_To_Thread_ID, Answers, _, Find_All)
                          )
    ),
    All_Answers_Goal = run_cancellable_goal(Self_ID, 
              findall(Answers, One_Answer_Goal, [Find_All_Answers | _])),

Is there any reason for a double findall/2 when Find_All = true?