copies all bytes from the input stream to the output stream . does not close or flush either stream . taken from google guava bytestreams.java concode_field_sep String TMP_DIR concode_elem_sep String TEMP_DEVICE_INFO_FILENAME concode_elem_sep String TEMP_LOG_FILENAME concode_elem_sep String TEMP_ZIP_FILENAME concode_elem_sep String CATLOG_DIR concode_elem_sep UtilLogger log concode_elem_sep String SAVED_LOGS_DIR concode_elem_sep int BUFFER concode_elem_sep String LEGACY_SAVED_LOGS_DIR concode_field_sep void moveLogsFromLegacyDirIfNecessary concode_elem_sep boolean legacySavedLogsDirExists concode_elem_sep Date getLastModifiedDate concode_elem_sep boolean saveLog concode_elem_sep boolean saveLog concode_elem_sep boolean saveLog concode_elem_sep File getTempDirectory concode_elem_sep File getFile concode_elem_sep SavedLog openLog concode_elem_sep boolean checkSdCard concode_elem_sep boolean checkIfSdCardExists concode_elem_sep File saveTemporaryZipFileAndThrow concode_elem_sep File getCatlogDirectory concode_elem_sep List<String> getLogFilenames concode_elem_sep void deleteLogIfExists concode_elem_sep File saveTemporaryFile concode_elem_sep File saveTemporaryZipFile concode_elem_sep File getSavedLogsDirectory
long function ( InputStream arg0 , OutputStream arg1 ) { byte [ ] loc0 = new byte [ BUFFER ] ; long loc1 = 0 ; while ( true ) { int loc2 = arg0 . read ( loc0 ) ; if ( loc2 == - 1 ) { break ; } arg1 . write ( loc0 , 0 , loc2 ) ; loc1 += loc2 ; } return loc1 ; }