فهرست منبع

ftp: Fix accessing first element in empty segments vector

Tatsuhiro Tsujikawa 10 سال پیش
والد
کامیت
62826d691d
1فایلهای تغییر یافته به همراه3 افزوده شده و 1 حذف شده
  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) {