mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-31 07:13:00 +00:00 
			
		
		
		
	checkpoint db before export
This commit is contained in:
		| @@ -5,6 +5,7 @@ import android.app.AlertDialog; | ||||
| import android.content.DialogInterface; | ||||
| import android.content.Intent; | ||||
| import android.content.SharedPreferences; | ||||
| import android.database.Cursor; | ||||
| import android.os.Bundle; | ||||
| import android.preference.PreferenceManager; | ||||
| import android.util.Log; | ||||
| @@ -17,6 +18,8 @@ import androidx.preference.Preference; | ||||
| import com.nononsenseapps.filepicker.Utils; | ||||
| import com.nostra13.universalimageloader.core.ImageLoader; | ||||
|  | ||||
| import org.schabi.newpipe.App; | ||||
| import org.schabi.newpipe.NewPipeDatabase; | ||||
| import org.schabi.newpipe.R; | ||||
| import org.schabi.newpipe.extractor.NewPipe; | ||||
| import org.schabi.newpipe.extractor.localization.ContentCountry; | ||||
| @@ -168,6 +171,9 @@ public class ContentSettingsFragment extends BasePreferenceFragment { | ||||
|  | ||||
|     private void exportDatabase(String path) { | ||||
|         try { | ||||
|             //checkpoint before export | ||||
|             checkpoint(); | ||||
|  | ||||
|             ZipOutputStream outZip = new ZipOutputStream( | ||||
|                     new BufferedOutputStream( | ||||
|                             new FileOutputStream(path))); | ||||
| @@ -185,6 +191,12 @@ public class ContentSettingsFragment extends BasePreferenceFragment { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private void checkpoint() { | ||||
|         Cursor c = NewPipeDatabase.getInstance(App.getApp()).getOpenHelper().getWritableDatabase().query("pragma wal_checkpoint(full)"); | ||||
|         if(c.moveToFirst() && c.getInt(0) == 1) | ||||
|             throw new RuntimeException("Checkpoint was blocked from completing"); | ||||
|     } | ||||
|  | ||||
|     private void saveSharedPreferencesToFile(File dst) { | ||||
|         ObjectOutputStream output = null; | ||||
|         try { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 yausername
					yausername