code: function(id, dontAllowNext) {
              var allowNext = !dontAllowNext,
                  waitingIndex = qq.indexOf(connectionManager._waiting, id),
                  connectionsIndex = qq.indexOf(connectionManager._open, id),
                  nextId;
  
              delete connectionManager._openChunks[id];
  
              if (upload.getProxyOrBlob(id) instanceof qq.BlobProxy) {
                  log("Generated blob upload has ended for " + id + ", disposing generated blob.");
                  delete handler._getFileState(id).file;
              }
  
              // If this file was not consuming a connection, it was just waiting, so remove it from the waiting array
              if (waitingIndex >= 0) {
                  connectionManager._waiting.splice(waitingIndex, 1);
              }
              // If this file was consuming a connection, allow the next file to be uploaded
              else if (allowNext && connectionsIndex >= 0) {
                  connectionManager._open.splice(connectionsIndex, 1);
  
                  nextId = connectionManager._waiting.shift();
                  if (nextId >= 0) {
                      connectionManager._open.push(nextId);
                      upload.start(nextId);
                  }
              }
          }
docs: Removes element from queue, starts upload of next