code: func (w *walker) updateFileInfo(file, curFile protocol.FileInfo) protocol.FileInfo {
  	if file.Type == protocol.FileInfoTypeFile && runtime.GOOS == "windows" {
  		// If we have an existing index entry, copy the executable bits
  		// from there.
  		file.Permissions |= (curFile.Permissions & 0111)
  	}
  	file.Version = curFile.Version.Update(w.ShortID)
  	file.ModifiedBy = w.ShortID
  	file.LocalFlags = w.LocalFlags
  	return file
  }
docs: // updateFileInfo updates walker specific members of protocol.FileInfo that do not depend on type