File tree Expand file tree Collapse file tree 1 file changed +22
-9
lines changed Expand file tree Collapse file tree 1 file changed +22
-9
lines changed Original file line number Diff line number Diff line change 158158				if  (  options . _chunked  )  { 
159159					// chunked upload 
160160					if (  xhr . upload  ) { 
161- 						xhr . upload . addEventListener ( 'progress' ,  function  ( /**Event*/ evt ) { 
161+ 						xhr . upload . addEventListener ( 'progress' ,  api . throttle ( function  ( /**Event*/ evt ) { 
162162							if  ( ! data . retry )  { 
163163							    // show progress only for correct chunk uploads 
164164								options . progress ( { 
168168									,  totalSize :	data . size 
169169								} ,  _this ,  options ) ; 
170170							} 
171- 						} ,  false ) ; 
171+ 						} ,  100 ) ,   false ) ; 
172172					} 
173173
174174					xhr . onreadystatechange  =  function  ( ) { 
204204										data . end  =  lkb ; 
205205									}  else  { 
206206										data . end  =  data . start  -  1 ; 
207+                                         if  ( 416  ==  xhr . status )  { 
208+                                             data . end  =  data . end  -  options . chunkSize ; 
209+                                         } 
207210									} 
208211
209212									setTimeout ( function  ( )  { 
237240								} 
238241							} 
239242							xhr  =  null ; 
243+                             if  ( slice )  { 
244+                                 slice  =  null ; 
245+                             } 
240246						} 
241247					} ; 
242248
246252					var  slice ; 
247253					( slice  =  'slice' )  in  data . file  ||  ( slice  =  'mozSlice' )  in  data . file  ||  ( slice  =  'webkitSlice' )  in  data . file ; 
248254
249- 					xhr . setRequestHeader ( "Content-Range" ,  "bytes "  +  data . start  +  "-"  +  data . end  +  "/"  +  data . size ) ; 
250- 					xhr . setRequestHeader ( "Content-Disposition" ,  'attachment; filename='  +  encodeURIComponent ( data . name ) ) ; 
251- 					xhr . setRequestHeader ( "Content-Type" ,  data . type  ||  "application/octet-stream" ) ; 
252-                     
253- 					slice  =  data . file [ slice ] ( data . start ,  data . end  +  1 ) ; 
254-                  
255- 					xhr . send ( slice ) ; 
255+                     slice  =  data . file [ slice ] ( data . start ,  data . end  +  1 ) ; 
256+ 
257+                     if  ( data . size  &&  ! slice . size )  { 
258+                         setTimeout ( function  ( )  { 
259+                             _this . end ( - 1 ) ; 
260+                         } ) 
261+                     }  else  { 
262+                         xhr . setRequestHeader ( "Content-Range" ,  "bytes "  +  data . start  +  "-"  +  data . end  +  "/"  +  data . size ) ; 
263+                         xhr . setRequestHeader ( "Content-Disposition" ,  'attachment; filename='  +  encodeURIComponent ( data . name ) ) ; 
264+                         xhr . setRequestHeader ( "Content-Type" ,  data . type  ||  "application/octet-stream" ) ; 
265+ 
266+                         xhr . send ( slice ) ; 
267+                     } 
268+ 
256269					slice  =  null ; 
257270				}  else  { 
258271					// single piece upload 
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments