-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Prevents SvgUri crashes when uri is invalid and adds fallback prop #2071
Merged
WoLewicki
merged 4 commits into
software-mansion:main
from
PiotrWszolek:Adds-fallback-and-prevent-svg-crashes
Jul 6, 2023
Merged
Prevents SvgUri crashes when uri is invalid and adds fallback prop #2071
WoLewicki
merged 4 commits into
software-mansion:main
from
PiotrWszolek:Adds-fallback-and-prevent-svg-crashes
Jul 6, 2023
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This was referenced Jul 6, 2023
renovate bot
referenced
this pull request
in valora-inc/wallet
Oct 19, 2023
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [react-native-svg](https://github.com/react-native-community/react-native-svg) | [`^13.9.0` -> `^13.14.0`](https://renovatebot.com/diffs/npm/react-native-svg/13.9.0/13.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-native-svg/13.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-native-svg/13.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-native-svg/13.9.0/13.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-native-svg/13.9.0/13.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>react-native-community/react-native-svg (react-native-svg)</summary> ### [`v13.14.0`](https://github.com/software-mansion/react-native-svg/releases/tag/v13.14.0) [Compare Source](https://github.com/react-native-community/react-native-svg/compare/v13.13.0...v13.14.0) PR adding improvements to the library. Thanks for all your contributions 🚀 #### What's Changed - Create FUNDING.yml by [@​aleqsio](https://github.com/aleqsio) in [https://github.com/software-mansion/react-native-svg/pull/2133](https://github.com/software-mansion/react-native-svg/pull/2133) - docs: Update deprecated expo install instructions to \`npx expo install´ by [@​GabrieldosSantosOliveira](https://github.com/GabrieldosSantosOliveira) in [https://github.com/software-mansion/react-native-svg/pull/2128](https://github.com/software-mansion/react-native-svg/pull/2128) - \[macOS]\[Xcode 15] Avoid using dirtyRect in `drawRect:` by [@​Saadnajmi](https://github.com/Saadnajmi) in [https://github.com/software-mansion/react-native-svg/pull/2136](https://github.com/software-mansion/react-native-svg/pull/2136) - fix: error for transform on web by [@​WoLewicki](https://github.com/WoLewicki) in [https://github.com/software-mansion/react-native-svg/pull/2139](https://github.com/software-mansion/react-native-svg/pull/2139) - chore(deps): bump activesupport from 6.1.7.4 to 7.0.7.2 in /TestsExample by [@​dependabot](https://github.com/dependabot) in [https://github.com/software-mansion/react-native-svg/pull/2122](https://github.com/software-mansion/react-native-svg/pull/2122) - fix: web not working with reanimated in example by [@​WoLewicki](https://github.com/WoLewicki) in [https://github.com/software-mansion/react-native-svg/pull/2140](https://github.com/software-mansion/react-native-svg/pull/2140) #### New Contributors - [@​aleqsio](https://github.com/aleqsio) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2133](https://github.com/software-mansion/react-native-svg/pull/2133) - [@​GabrieldosSantosOliveira](https://github.com/GabrieldosSantosOliveira) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2128](https://github.com/software-mansion/react-native-svg/pull/2128) - [@​Saadnajmi](https://github.com/Saadnajmi) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2136](https://github.com/software-mansion/react-native-svg/pull/2136) **Full Changelog**: software-mansion/react-native-svg@v13.13.0...v13.14.0 ### [`v13.13.0`](https://github.com/software-mansion/react-native-svg/releases/tag/v13.13.0) [Compare Source](https://github.com/react-native-community/react-native-svg/compare/v13.12.0...v13.13.0) Minor release restoring usage of `UIGraphicsBeginImageContextWithOptions` on `macOS` since there is no implementation for `UIGraphicsImageRendererFormat` there yet. #### What's Changed - feat: add macos back to Example app by [@​WoLewicki](https://github.com/WoLewicki) in [https://github.com/software-mansion/react-native-svg/pull/2119](https://github.com/software-mansion/react-native-svg/pull/2119) **Full Changelog**: software-mansion/react-native-svg@v13.12.0...v13.13.0 ### [`v13.12.0`](https://github.com/software-mansion/react-native-svg/releases/tag/v13.12.0) [Compare Source](https://github.com/react-native-community/react-native-svg/compare/v13.11.0...v13.12.0) Minor release introducing the change of API used on `iOS` from [UIGraphicsBeginImageContextWithOptions](https://developer.apple.com/documentation/uikit/1623912-uigraphicsbeginimagecontextwitho) to [UIGraphicsImageRenderer](https://developer.apple.com/documentation/uikit/uigraphicsimagerenderer). #### What's Changed - feat: remove UIGraphicsBeginImageContextWithOptions from repo by [@​WoLewicki](https://github.com/WoLewicki) in [https://github.com/software-mansion/react-native-svg/pull/2117](https://github.com/software-mansion/react-native-svg/pull/2117) **Full Changelog**: software-mansion/react-native-svg@v13.11.0...v13.12.0 ### [`v13.11.0`](https://github.com/software-mansion/react-native-svg/releases/tag/v13.11.0) [Compare Source](https://github.com/react-native-community/react-native-svg/compare/v13.10.0...v13.11.0) Minor release cleaning the repository 🧹 Please submit any issues that come up with the newest version 🐛 Thanks for your contributions 🚀 #### What's Changed - fix: make web platform types compatible with native types by [@​nderscore](https://github.com/nderscore) in [https://github.com/software-mansion/react-native-svg/pull/2091](https://github.com/software-mansion/react-native-svg/pull/2091) - docs: update usage.md for react-native 0.72 by [@​Letty](https://github.com/Letty) in [https://github.com/software-mansion/react-native-svg/pull/2104](https://github.com/software-mansion/react-native-svg/pull/2104) - docs: update README.md by [@​Mhp23](https://github.com/Mhp23) in [https://github.com/software-mansion/react-native-svg/pull/2110](https://github.com/software-mansion/react-native-svg/pull/2110) - fix: bump packages, eslint, tsconfig, prettier and resolve all conflicts by [@​WoLewicki](https://github.com/WoLewicki) in [https://github.com/software-mansion/react-native-svg/pull/2114](https://github.com/software-mansion/react-native-svg/pull/2114) #### New Contributors - [@​nderscore](https://github.com/nderscore) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2091](https://github.com/software-mansion/react-native-svg/pull/2091) - [@​Letty](https://github.com/Letty) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2104](https://github.com/software-mansion/react-native-svg/pull/2104) - [@​Mhp23](https://github.com/Mhp23) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2110](https://github.com/software-mansion/react-native-svg/pull/2110) **Full Changelog**: software-mansion/react-native-svg@v13.10.0...v13.11.0 ### [`v13.10.0`](https://github.com/software-mansion/react-native-svg/releases/tag/v13.10.0) [Compare Source](https://github.com/react-native-community/react-native-svg/compare/v13.9.0...v13.10.0) Minor release fixing some long-standing issues, adding new features such as web support for `toDataURL` ([https://github.com/software-mansion/react-native-svg/pull/2072](https://github.com/software-mansion/react-native-svg/pull/2072)) and `fallback` prop for `SvgXml` and others ([https://github.com/software-mansion/react-native-svg/pull/2071](https://github.com/software-mansion/react-native-svg/pull/2071)). It also adds support for RN 0.72 on **new architecture**, at the same time dropping the support for RN 0.71 there. Thanks for all your contributions 🚀 #### What's Changed - Fix compilation errors on Windows by [@​christophpurrer](https://github.com/christophpurrer) in [https://github.com/software-mansion/react-native-svg/pull/2045](https://github.com/software-mansion/react-native-svg/pull/2045) - Fix setNativeProps type by [@​fauri13](https://github.com/fauri13) in [https://github.com/software-mansion/react-native-svg/pull/2058](https://github.com/software-mansion/react-native-svg/pull/2058) - fix: remove deprecated import from react-native-web by [@​janlat](https://github.com/janlat) in [https://github.com/software-mansion/react-native-svg/pull/2027](https://github.com/software-mansion/react-native-svg/pull/2027) - fix: Updating iOS version [#​2038](https://github.com/react-native-community/react-native-svg/issues/2038) by [@​sgabriel](https://github.com/sgabriel) in [https://github.com/software-mansion/react-native-svg/pull/2041](https://github.com/software-mansion/react-native-svg/pull/2041) - Fix syntax error in RNSVGImageShadowNode::initialStateData by [@​hsjoberg](https://github.com/hsjoberg) in [https://github.com/software-mansion/react-native-svg/pull/2079](https://github.com/software-mansion/react-native-svg/pull/2079) - Fix [#​1345](https://github.com/react-native-community/react-native-svg/issues/1345): opacity does not work with currentColor on Android by [@​laptou](https://github.com/laptou) in [https://github.com/software-mansion/react-native-svg/pull/2080](https://github.com/software-mansion/react-native-svg/pull/2080) - chore: bump Example to 0.72 by [@​WoLewicki](https://github.com/WoLewicki) in [https://github.com/software-mansion/react-native-svg/pull/2084](https://github.com/software-mansion/react-native-svg/pull/2084) - chore(deps): bump fast-xml-parser from 4.1.3 to 4.2.4 in /TestsExample by [@​dependabot](https://github.com/dependabot) in [https://github.com/software-mansion/react-native-svg/pull/2063](https://github.com/software-mansion/react-native-svg/pull/2063) - chore(deps): bump vm2 from 3.9.14 to 3.9.19 by [@​dependabot](https://github.com/dependabot) in [https://github.com/software-mansion/react-native-svg/pull/2056](https://github.com/software-mansion/react-native-svg/pull/2056) - chore(deps): bump fast-xml-parser from 4.2.4 to 4.2.5 in /TestsExample by [@​dependabot](https://github.com/dependabot) in [https://github.com/software-mansion/react-native-svg/pull/2085](https://github.com/software-mansion/react-native-svg/pull/2085) - Add web support for toDataURL() on svg tags by [@​chrispader](https://github.com/chrispader) in [https://github.com/software-mansion/react-native-svg/pull/2072](https://github.com/software-mansion/react-native-svg/pull/2072) - Prevents SvgUri crashes when uri is invalid and adds fallback prop by [@​PiotrWszolek](https://github.com/PiotrWszolek) in [https://github.com/software-mansion/react-native-svg/pull/2071](https://github.com/software-mansion/react-native-svg/pull/2071) - chore: run prettier and lint by [@​WoLewicki](https://github.com/WoLewicki) in [https://github.com/software-mansion/react-native-svg/pull/2087](https://github.com/software-mansion/react-native-svg/pull/2087) - chore: bump TestsExample to 0.72 by [@​WoLewicki](https://github.com/WoLewicki) in [https://github.com/software-mansion/react-native-svg/pull/2088](https://github.com/software-mansion/react-native-svg/pull/2088) - feat: strokeDasharray with Animated by [@​WoLewicki](https://github.com/WoLewicki) in [https://github.com/software-mansion/react-native-svg/pull/2089](https://github.com/software-mansion/react-native-svg/pull/2089) #### New Contributors - [@​christophpurrer](https://github.com/christophpurrer) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2045](https://github.com/software-mansion/react-native-svg/pull/2045) - [@​fauri13](https://github.com/fauri13) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2058](https://github.com/software-mansion/react-native-svg/pull/2058) - [@​janlat](https://github.com/janlat) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2027](https://github.com/software-mansion/react-native-svg/pull/2027) - [@​sgabriel](https://github.com/sgabriel) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2041](https://github.com/software-mansion/react-native-svg/pull/2041) - [@​laptou](https://github.com/laptou) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2080](https://github.com/software-mansion/react-native-svg/pull/2080) - [@​chrispader](https://github.com/chrispader) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2072](https://github.com/software-mansion/react-native-svg/pull/2072) - [@​PiotrWszolek](https://github.com/PiotrWszolek) made their first contribution in [https://github.com/software-mansion/react-native-svg/pull/2071](https://github.com/software-mansion/react-native-svg/pull/2071) **Full Changelog**: software-mansion/react-native-svg@v13.9.0...v13.10.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 5pm,every weekend" in timezone America/Los_Angeles, Automerge - "after 5pm,every weekend" in timezone America/Los_Angeles. 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/valora-inc/wallet). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xOS4yIiwidXBkYXRlZEluVmVyIjoiMzcuMTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: valora-bot <valorabot@valoraapp.com>
4 tasks
WoLewicki
pushed a commit
that referenced
this pull request
Jan 3, 2024
…p when loading invalid content from remote svg file (#2196) This crash issue still happening for SvgCssUri component #1760 Apply similar fix #2071 specifically for SvgCSSUri component to prevent crashes due to invalid svg content What issues does the pull request solve? Please tag them so that they will get automatically closed once the PR is merged -> When loading invalid svg uri with SvgCSSUri, the app crashes crashes. For example the content returning html content instead of valid svg content. How did you implement the solution? -> Passing the fallback prop to SvgCss where will be render when error being captured What areas of the library does it impact? SvgCss and SvgUriCss
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Resolves issues:
SvgUri component crashes an app when uri with SVG returns html or some other content instead of valid SVG.
This change prevents those crashes and adds fallback property of JSX type which is rendered instead of corrupted SVG.
Test Plan
Tested manually: First rendered from URI with html content: https://en.wikipedia.org/wiki/File:Vector-based_example.svg , then replaced with a proper SVG: https://upload.wikimedia.org/wikipedia/commons/3/30/Vector-based_example.svg
Simulator.Screen.Recording.-.iPhone.14.-.2023-06-22.at.11.31.01.mp4
What's required for testing (prerequisites)?
URI which returns SVG and won't be parsed properly.
What are the steps to reproduce (after prerequisites)?
Compatibility
Checklist
README.md
__tests__
folder