Parcourir la source

ftp: Fix accessing first element in empty segments vector

Tatsuhiro Tsujikawa il y a 10 ans
Parent
commit
62826d691d
1 fichiers modifiés avec 3 ajouts et 1 suppressions
  1. 3 1
      src/FtpNegotiationCommand.cc

+ 3 - 1
src/FtpNegotiationCommand.cc

@@ -106,7 +106,9 @@ FtpNegotiationCommand::FtpNegotiationCommand
 FtpNegotiationCommand::~FtpNegotiationCommand() {}
 
 bool FtpNegotiationCommand::executeInternal() {
-  while(processSequence(getSegments().front()));
+  auto segment = getSegments().empty() ?
+    std::shared_ptr<Segment>() : getSegments().front();
+  while(processSequence(segment));
   if(sequence_ == SEQ_RETRY) {
     return prepareForRetry(0);
   } else if(sequence_ == SEQ_NEGOTIATION_COMPLETED) {