@@ -275,16 +275,17 @@ def write_mmap(self):
275275 size = len (data ) + 2 + 4
276276 if not hasattr (self , "buffer" ) or self .buffersz < size :
277277 self .buffersz = max (self .DEFAULT_BUFFER_SIZE , size )
278- if hasattr (self , "bufferfd " ):
278+ if hasattr (self , "buffer " ):
279279 self .buffer .close ()
280- os .close (self .bufferfd )
281280 self .bufferfd = os .open ("/tmp/mirrord" ,
282281 os .O_CREAT | os .O_TRUNC | os .O_RDWR ,
283282 0o644 )
284283 flag = fcntl .fcntl (self .bufferfd , fcntl .F_GETFD )
285284 fcntl .fcntl (self .bufferfd , fcntl .F_SETFD , flag | fcntl .FD_CLOEXEC )
286285 os .write (self .bufferfd , '\x00 ' * self .buffersz )
287286 self .buffer = mmap .mmap (self .bufferfd , self .buffersz , mmap .MAP_SHARED , mmap .PROT_WRITE )
287+ # close bufferfd
288+ os .close (self .bufferfd )
288289 self .buffer .write ("\x79 \x71 " )
289290 self .buffer .seek (2 )
290291 self .buffer .write (struct .pack ("I" , size ))
@@ -295,7 +296,6 @@ def stop(self):
295296 if not hasattr (self , "buffer" ):
296297 return
297298 self .buffer .close ()
298- os .close (self .bufferfd )
299299 os .unlink ("/tmp/mirrord" )
300300
301301 def append_timeout_task (self , taskname , task , time ):
0 commit comments