Răsfoiți Sursa

show error message when querying profile for non logged in user

Mike 3 ani în urmă
părinte
comite
2087780423
1 a modificat fișierele cu 11 adăugiri și 1 ștergeri
  1. 11 1
      oscar/locate.go

+ 11 - 1
oscar/locate.go

@@ -2,6 +2,7 @@ package oscar
 
 import (
 	"encoding/binary"
+	"errors"
 	"fmt"
 	"io"
 	"reflect"
@@ -270,7 +271,16 @@ func SendAndReceiveUserInfoQuery2(sm *SessionManager, fm *FeedbagStore, flap *fl
 
 	sess, err := sm.RetrieveByScreenName(snacPayloadIn.screenName)
 	if err != nil {
-		return err
+		if errors.Is(err, errSessNotFound) {
+			snacFrameOut := snacFrame{
+				foodGroup: LOCATE,
+				subGroup:  LocateErr,
+			}
+			snacPayloadOut := &snacError{
+				code: ErrorCodeNotLoggedOn,
+			}
+			return writeOutSNAC(snac, flap, snacFrameOut, snacPayloadOut, sequence, w)
+		}
 	}
 
 	snacFrameOut := snacFrame{