Skip to content

Comma escaping for text overlays is not working correctly #702

Description

@greimers

Describe the bug in a sentence or two.

Adding text overlays with commas (,) on videos results in %2C escape sequences in the overlay.
Other characters like quotes, dashes, question marks, and percent are automatically handled correctly and appear correctly in the overlay.
Manually escaping the comma does not work either because the % is automatically escaped.

Issue Type (Can be multiple)

[ ] Build - Can’t install or import the SDK
[ ] Babel - Babel errors or cross browser issues
[ ] Performance - Performance issues
[x] Behaviour - Functions aren’t working as expected (Such as generate URL)
[ ] Documentation - Inconsistency between the docs and behaviour
[ ] Incorrect Types - For typescript users who are having problems with our d.ts files
[ ] Other (Specify)

Steps to reproduce

Create a text overlay on a video that contains a comma.

Sample code:

lettransformations=[{width: 900,height: 900,crop: "fill"},{color: "#ffffff",overlay: {font_family: font,font_size: 48,text: "So, \"here\" & here are 10% special chars - right?",text_align: "center"},width: 800,crop: "fit"},{duration: 2.0},{flags: "layer_apply",gravity: gravity,x: 0,y: 0.05,start_offset: 0.0,end_offset: 2.0}];letnamedVideoTransformation="myTransformation";awaitcloudinary.v2.api.create_transformation(namedVideoTransformation,{transformation: transformations,});videoUri=cloudinary.url("folder/video.mp4",{resource_type: "video",transformation: [namedVideoTransformation],});

Error screenshots

Image

Versions and Libraries (fill in the version numbers)

Cloudinary_NPM SDK version 2.5.1
Node - 23.7.0
NPM - 10.9.2

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions