cloudinary / cloudinary/cloudinary_java

`options` map modified directly

Aperta
#383 3 commenti 1 reazione 1 assegnatario Assegnata a @adimiz1 Vedi su GitHub
Lingua principale
Java
Stelle
175
Fork
113
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

## Describe the bug in a sentence or two.
When passing in an immutable map to `Uploader.uploadLarge` it errors out because the method [tries to update](https://github.com/cloudinary/cloudinary_java/blob/master/cloudinary-core/src/main/java/com/cloudinary/Uploader.java#L147) the same instance that was passed in to it.
AFAICS, in most places a defensive copy is made from the `options` map, but not here. It caused issues for us as we are using the lib from Clojure interop, and by default, all the collections there are immutable.

## Issue Type (Can be multiple)
[ ] Build - Can’t install or import the SDK
[ ] Performance - Performance issues
[x] Behaviour - Functions aren’t working as expected (Such as generate URL)
[ ] Documentation - Inconsistency between the docs and behaviour
[ ] Other (Specify)

## Steps to reproduce
Use an immutable map as options for `Uploader.uploadLarge` when file is a `java.util.File`.

## Versions and Libraries (fill in the version numbers)
Cloudinary Java SDK version - 1.39.0

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.