mirror of
https://github.com/Kunzisoft/KeePassDX.git
synced 2025-12-04 15:49:33 +01:00
Fix binary keyfiles.
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
package com.keepassdroid.database;
|
||||
|
||||
import java.io.BufferedInputStream;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
@@ -136,16 +137,16 @@ public abstract class PwDatabase {
|
||||
throws InvalidKeyFileException, IOException {
|
||||
assert(keyInputStream != null);
|
||||
|
||||
byte[] key = loadXmlKeyFile(keyInputStream);
|
||||
ByteArrayOutputStream bos = new ByteArrayOutputStream();
|
||||
Util.copyStream(keyInputStream, bos);
|
||||
byte[] keyData = bos.toByteArray();
|
||||
|
||||
ByteArrayInputStream bis = new ByteArrayInputStream(keyData);
|
||||
byte[] key = loadXmlKeyFile(bis);
|
||||
if ( key != null ) {
|
||||
return key;
|
||||
}
|
||||
|
||||
ByteArrayOutputStream bos = new ByteArrayOutputStream();
|
||||
Util.copyStream(keyInputStream, bos);
|
||||
byte[] keyData = bos.toByteArray();
|
||||
|
||||
|
||||
long fileSize = keyData.length;
|
||||
if ( fileSize == 0 ) {
|
||||
throw new KeyFileEmptyException();
|
||||
|
||||
Reference in New Issue
Block a user