[haiku-commits] haiku: hrev52581 - src/kits/locale

  • From: waddlesplash <waddlesplash@xxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 23 Nov 2018 13:57:09 -0500 (EST)

hrev52581 adds 1 changeset to branch 'master'
old head: 6f1cd477d40f900a27f616e573499316eac3cb6a
new head: 26b2733af3028208d332d50ab861a16ae12f8dfd
overview: 
https://git.haiku-os.org/haiku/log/?qt=range&q=26b2733af302+%5E6f1cd477d40f

----------------------------------------------------------------------------

26b2733af302: Locale kit: Fix PVS 550, 551
  
  Use BStackOrHeapArray instead of applying auto_ptr to array.
  
  Change-Id: I204dcb97a1bc2d047783bc6015f86b36ca0cc15b
  Reviewed-on: https://review.haiku-os.org/725
  Reviewed-by: Adrien Destugues <pulkomandy@xxxxxxxxxxxxx>

                                      [ Murai Takashi <tmurai01@xxxxxxxxx> ]

----------------------------------------------------------------------------

Revision:    hrev52581
Commit:      26b2733af3028208d332d50ab861a16ae12f8dfd
URL:         https://git.haiku-os.org/haiku/commit/?id=26b2733af302
Author:      Murai Takashi <tmurai01@xxxxxxxxx>
Date:        Thu Nov 22 11:18:25 2018 UTC
Committer:   waddlesplash <waddlesplash@xxxxxxxxx>
Commit-Date: Fri Nov 23 18:57:02 2018 UTC

----------------------------------------------------------------------------

1 file changed, 11 insertions(+), 10 deletions(-)
src/kits/locale/DefaultCatalog.cpp | 21 +++++++++++----------

----------------------------------------------------------------------------

diff --git a/src/kits/locale/DefaultCatalog.cpp 
b/src/kits/locale/DefaultCatalog.cpp
index a0f08abef9..d3d240a279 100644
--- a/src/kits/locale/DefaultCatalog.cpp
+++ b/src/kits/locale/DefaultCatalog.cpp
@@ -8,7 +8,7 @@
  */
 
 
-#include <memory>
+#include <algorithm>
 #include <new>
 
 #include <AppFileInfo.h>
@@ -23,14 +23,15 @@
 #include <Path.h>
 #include <Resources.h>
 #include <Roster.h>
+#include <StackOrHeapArray.h>
 
 #include <DefaultCatalog.h>
 #include <MutableLocaleRoster.h>
 
+
 #include <cstdio>
 
 
-using std::auto_ptr;
 using std::min;
 using std::max;
 using std::pair;
@@ -205,15 +206,15 @@ DefaultCatalog::ReadFromFile(const char *path)
                return res;
        }
 
-       auto_ptr<char> buf(new(std::nothrow) char [sz]);
-       if (buf.get() == NULL)
+       BStackOrHeapArray<char, 0> buf(sz);
+       if (!buf.IsValid())
                return B_NO_MEMORY;
-       res = catalogFile.Read(buf.get(), sz);
+       res = catalogFile.Read(buf, sz);
        if (res < B_OK)
                return res;
        if (res < sz)
                return res;
-       BMemoryIO memIO(buf.get(), sz);
+       BMemoryIO memIO(buf, sz);
        res = Unflatten(&memIO);
 
        if (res == B_OK) {
@@ -246,15 +247,15 @@ DefaultCatalog::ReadFromAttribute(const entry_ref 
&appOrAddOnRef)
                return B_BAD_TYPE;
 
        size_t size = attrInfo.size;
-       auto_ptr<char> buf(new(std::nothrow) char [size]);
-       if (buf.get() == NULL)
+       BStackOrHeapArray<char, 0> buf(size);
+       if (!buf.IsValid())
                return B_NO_MEMORY;
        res = node.ReadAttr(BLocaleRoster::kEmbeddedCatAttr, B_MESSAGE_TYPE, 0,
-               buf.get(), size);
+               buf, size);
        if (res < (ssize_t)size)
                return res < B_OK ? res : B_BAD_DATA;
 
-       BMemoryIO memIO(buf.get(), size);
+       BMemoryIO memIO(buf, size);
        res = Unflatten(&memIO);
 
        return res;


Other related posts:

  • » [haiku-commits] haiku: hrev52581 - src/kits/locale - waddlesplash