Skip to content

Commit fe22424

Browse files
authored
#228 Overwrite happens - fix extension of filename (#3689)
1 parent f7b1b14 commit fe22424

File tree

1 file changed

+8
-14
lines changed

1 file changed

+8
-14
lines changed

app/src/main/java/fr/free/nrw/commons/upload/UploadModel.java

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44
import android.content.Context;
55
import android.net.Uri;
66
import androidx.annotation.Nullable;
7+
import fr.free.nrw.commons.Utils;
78
import fr.free.nrw.commons.auth.SessionManager;
89
import fr.free.nrw.commons.contributions.Contribution;
10+
import fr.free.nrw.commons.filepicker.MimeTypeMapWrapper;
911
import fr.free.nrw.commons.filepicker.UploadableFile;
1012
import fr.free.nrw.commons.kvstore.JsonKvStore;
1113
import fr.free.nrw.commons.nearby.Place;
@@ -106,8 +108,8 @@ private UploadItem createAndAddUploadItem(final UploadableFile uploadableFile,
106108
Timber.d("File created date is %d", fileCreatedDate);
107109
final ImageCoordinates imageCoordinates = fileProcessor
108110
.processFileCoordinates(similarImageInterface, uploadableFile.getFilePath());
109-
final UploadItem uploadItem = new UploadItem(uploadableFile.getContentUri(),
110-
Uri.parse(uploadableFile.getFilePath()),
111+
final UploadItem uploadItem = new UploadItem(
112+
Uri.parse(uploadableFile.getFilePath()),
111113
uploadableFile.getMimeType(context), imageCoordinates, place, fileCreatedDate,
112114
createdTimestampSource);
113115
if (place != null) {
@@ -204,7 +206,6 @@ public List<DepictedItem> getSelectedDepictions() {
204206
@SuppressWarnings("WeakerAccess")
205207
public static class UploadItem {
206208

207-
private final Uri originalContentUri;
208209
private final Uri mediaUri;
209210
private final String mimeType;
210211
private ImageCoordinates gpsCoords;
@@ -214,13 +215,12 @@ public static class UploadItem {
214215
private final String createdTimestampSource;
215216
private final BehaviorSubject<Integer> imageQuality;
216217
@SuppressLint("CheckResult")
217-
UploadItem(final Uri originalContentUri,
218-
final Uri mediaUri, final String mimeType,
218+
UploadItem(final Uri mediaUri,
219+
final String mimeType,
219220
final ImageCoordinates gpsCoords,
220221
final Place place,
221222
final long createdTimestamp,
222223
final String createdTimestampSource) {
223-
this.originalContentUri = originalContentUri;
224224
this.createdTimestampSource = createdTimestampSource;
225225
uploadMediaDetails = new ArrayList<>(Arrays.asList(new UploadMediaDetail()));
226226
this.place = place;
@@ -267,10 +267,6 @@ public void setMediaDetails(final List<UploadMediaDetail> uploadMediaDetails) {
267267
this.uploadMediaDetails = uploadMediaDetails;
268268
}
269269

270-
public Uri getContentUri() {
271-
return originalContentUri;
272-
}
273-
274270
@Override
275271
public boolean equals(@Nullable final Object obj) {
276272
if (!(obj instanceof UploadItem)) {
@@ -290,15 +286,13 @@ public int hashCode() {
290286
* Currently, the caption is used as a filename. If several languages have been entered, the first language is used.
291287
*/
292288
public String getFileName() {
293-
return uploadMediaDetails.get(0).getCaptionText();
289+
return Utils.fixExtension(uploadMediaDetails.get(0).getCaptionText(),
290+
MimeTypeMapWrapper.getExtensionFromMimeType(mimeType));
294291
}
295292

296293
public void setGpsCoords(final ImageCoordinates gpsCoords) {
297294
this.gpsCoords = gpsCoords;
298295
}
299296

300-
public String getMimeType() {
301-
return mimeType;
302-
}
303297
}
304298
}

0 commit comments

Comments
 (0)