From 668d71aa0b4d63ce3366dadafaf167910d808c59 Mon Sep 17 00:00:00 2001 From: David Vacca Date: Wed, 21 Apr 2021 10:22:31 -0700 Subject: [PATCH] Refactor dataSize to use int instead of short Summary: DynamicData can contain a big amount of data, refactoring type to use int instead of short changelog: [internal] internal Reviewed By: sammy-SC Differential Revision: D27904643 fbshipit-source-id: 157064b280e27a9c7c4a4f55af310392b178feda --- .../react/common/mapbuffer/ReadableMapBuffer.java | 8 ++++---- ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp | 6 +++--- ReactCommon/react/renderer/mapbuffer/MapBuffer.h | 6 +++--- ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp | 2 +- ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h | 4 ++-- ReactCommon/react/renderer/mapbuffer/primitives.h | 2 +- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java b/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java index e70c3c090cc..24c0cb080c4 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java +++ b/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java @@ -29,8 +29,8 @@ public class ReadableMapBuffer implements Iterable(&dataSize_), reinterpret_cast(data_ + HEADER_BUFFER_SIZE_OFFSET), - UINT16_SIZE); + INT_SIZE); if (dataSize != dataSize_) { LOG(ERROR) << "Error: Data size does not match, expected " << dataSize @@ -123,7 +123,7 @@ bool MapBuffer::isNull(Key key) const { return getInt(key) == NULL_VALUE; } -uint16_t MapBuffer::getBufferSize() const { +int MapBuffer::getBufferSize() const { return dataSize_; } diff --git a/ReactCommon/react/renderer/mapbuffer/MapBuffer.h b/ReactCommon/react/renderer/mapbuffer/MapBuffer.h index e64b6a1c8b9..fdbe85f8957 100644 --- a/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +++ b/ReactCommon/react/renderer/mapbuffer/MapBuffer.h @@ -37,7 +37,7 @@ class MapBuffer { const uint8_t *data_ = nullptr; // amount of bytes in the MapBuffer - uint16_t dataSize_ = 0; + int dataSize_ = 0; // amount of items in the MapBuffer uint16_t count_ = 0; @@ -46,7 +46,7 @@ class MapBuffer { int getDynamicDataOffset() const; public: - MapBuffer(uint8_t *const data, uint16_t dataSize); + MapBuffer(uint8_t *const data, int dataSize); ~MapBuffer(); @@ -61,7 +61,7 @@ class MapBuffer { // TODO T83483191: review this declaration MapBuffer getMapBuffer(Key key) const; - uint16_t getBufferSize() const; + int getBufferSize() const; // TODO T83483191: review parameters of copy method void copy(uint8_t *output) const; diff --git a/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp b/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp index f12fcc09088..10f1e1a5931 100644 --- a/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +++ b/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp @@ -141,7 +141,7 @@ void MapBufferBuilder::putString(Key key, std::string value) { } void MapBufferBuilder::putMapBuffer(Key key, MapBuffer &map) { - uint16_t mapBufferSize = map.getBufferSize(); + int mapBufferSize = map.getBufferSize(); // format [lenght of buffer (short)] + [Array of Characters in the string] int sizeOfDynamicData = mapBufferSize + UINT16_SIZE; diff --git a/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h b/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h index 7cc3dfbebaa..5c7e918631d 100644 --- a/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +++ b/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h @@ -16,8 +16,8 @@ namespace facebook { namespace react { // Default initial size for _keyValues array -// 106 = 10 entries = 10*10 + 6 sizeof(header) -constexpr uint16_t INITIAL_KEY_VALUE_SIZE = 106; +// 108 = 10 entries = 10*10 + 8 sizeof(header) +constexpr uint16_t INITIAL_KEY_VALUE_SIZE = 108; // Default initial size for _dynamicDataValues array constexpr int INITIAL_DYNAMIC_DATA_SIZE = 200; diff --git a/ReactCommon/react/renderer/mapbuffer/primitives.h b/ReactCommon/react/renderer/mapbuffer/primitives.h index ad153fd6f52..0ddb415501e 100644 --- a/ReactCommon/react/renderer/mapbuffer/primitives.h +++ b/ReactCommon/react/renderer/mapbuffer/primitives.h @@ -28,7 +28,7 @@ namespace react { struct Header { uint16_t alignment; // alignment of serialization uint16_t count; // amount of items in the map - uint16_t bufferSize; // Amount of bytes used to store the map in memory + int bufferSize; // Amount of bytes used to store the map in memory }; constexpr static int KEY_SIZE = sizeof(Key);