Skip to content

Commit e32f8d3

Browse files
misaochanVivek Maskara
authored and
Vivek Maskara
committed
Fix title/desc prefill bug (commons-app#1794)
* Move isDirectUpload putExtra above Wikidata edits try catch block * Check value of boolean isDirectUpload in intent * Change to getBooleanExtra to prevent NPE * Fix whitespaces, logging, and lint issues
1 parent ff9f43e commit e32f8d3

File tree

2 files changed

+13
-7
lines changed

2 files changed

+13
-7
lines changed

app/src/main/java/fr/free/nrw/commons/contributions/ContributionController.java

+9-4
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ public void startGalleryPick() {
9595

9696
public void handleImagePicked(int requestCode, @Nullable Uri uri, boolean isDirectUpload, String wikiDataEntityId) {
9797
FragmentActivity activity = fragment.getActivity();
98-
Timber.d("handleImagePicked() called with onActivityResult()");
98+
Timber.d("handleImagePicked() called with onActivityResult(). Boolean isDirectUpload: " + isDirectUpload + "String wikiDataEntityId: " + wikiDataEntityId);
9999
Intent shareIntent = new Intent(activity, ShareActivity.class);
100100
shareIntent.setAction(ACTION_SEND);
101101
switch (requestCode) {
@@ -113,21 +113,26 @@ public void handleImagePicked(int requestCode, @Nullable Uri uri, boolean isDire
113113
shareIntent.setType("image/jpeg");
114114
shareIntent.putExtra(EXTRA_STREAM, lastGeneratedCaptureUri);
115115
shareIntent.putExtra(EXTRA_SOURCE, SOURCE_CAMERA);
116-
117116
break;
118117
default:
119118
break;
120119
}
120+
121121
Timber.i("Image selected");
122+
shareIntent.putExtra("isDirectUpload", isDirectUpload);
123+
Timber.d("Put extras into image intent, isDirectUpload is " + isDirectUpload);
124+
122125
try {
123-
shareIntent.putExtra("isDirectUpload", isDirectUpload);
124126
if (wikiDataEntityId != null && !wikiDataEntityId.equals("")) {
125127
shareIntent.putExtra(WIKIDATA_ENTITY_ID_PREF, wikiDataEntityId);
126128
}
127-
activity.startActivity(shareIntent);
128129
} catch (SecurityException e) {
129130
Timber.e(e, "Security Exception");
130131
}
132+
133+
if (activity != null) {
134+
activity.startActivity(shareIntent);
135+
}
131136
}
132137

133138
void saveState(Bundle outState) {

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

+4-3
Original file line numberDiff line numberDiff line change
@@ -351,17 +351,18 @@ private void receiveImageIntent() {
351351

352352
if (Intent.ACTION_SEND.equals(intent.getAction())) {
353353
mediaUri = intent.getParcelableExtra(Intent.EXTRA_STREAM);
354-
355354
contentProviderUri = mediaUri;
356-
357355
mediaUri = ContributionUtils.saveFileBeingUploadedTemporarily(this, mediaUri);
358356

359357
if (intent.hasExtra(UploadService.EXTRA_SOURCE)) {
360358
source = intent.getStringExtra(UploadService.EXTRA_SOURCE);
361359
} else {
362360
source = Contribution.SOURCE_EXTERNAL;
363361
}
364-
if (intent.hasExtra("isDirectUpload")) {
362+
363+
boolean isDirectUpload = intent.getBooleanExtra("isDirectUpload", false);
364+
365+
if (isDirectUpload) {
365366
Timber.d("This was initiated by a direct upload from Nearby");
366367
isNearbyUpload = true;
367368
wikiDataEntityId = intent.getStringExtra(WIKIDATA_ENTITY_ID_PREF);

0 commit comments

Comments
 (0)