poi-yelp: don't use fixed buffer size 64/22764/3
authorMatt Ranostay <matt.ranostay@konsulko.com>
Thu, 31 Oct 2019 13:59:00 +0000 (06:59 -0700)
committerMatt Ranostay <matt.ranostay@konsulko.com>
Mon, 11 Nov 2019 08:45:54 +0000 (00:45 -0800)
Use QByteArray over arbitrary buffer size for QNetworkReply

Bug-AGL: SPEC-2880
Change-Id: I65f04603afc22ef2f8ae5cfe97f747dda85e692d
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
MainApp.cpp

index cbf6d57..bb2ffc6 100644 (file)
@@ -24,7 +24,6 @@
 #define URL_AUTOCOMPLETE    "https://api.yelp.com/v3/autocomplete"
 #define URL_SEARCH          "https://api.yelp.com/v3/businesses/search"
 
-#define BIG_BUFFER_SIZE     (1024*1024)
 #define LEFT_OFFSET         28
 #define FONT_SIZE_LINEDIT   20
 #define FONT_SIZE_LIST      18
@@ -629,8 +628,7 @@ void MainApp::DisplayInformation(bool display, bool RefreshDisplay)
 
 void MainApp::networkReplySearch(QNetworkReply* reply)
 {
-    char buf[BIG_BUFFER_SIZE];
-    int buflen;
+    QByteArray buf;
 
     mutex.lock();
 
@@ -647,10 +645,9 @@ void MainApp::networkReplySearch(QNetworkReply* reply)
             return;
         }
 
-        buflen = reply->read(buf, BIG_BUFFER_SIZE-1);
-        buf[buflen] = '\0';
+        buf = reply->readAll();
 
-        if (buflen == 0)
+        if (buf.isEmpty())
         {
             mutex.unlock();
             return;
@@ -660,7 +657,7 @@ void MainApp::networkReplySearch(QNetworkReply* reply)
 
         currentIndex = 0;
         Businesses.clear();
-        ParseJsonBusinessList(buf, Businesses);
+        ParseJsonBusinessList(buf.data(), Businesses);
         DisplayResultList(true);
         FillResultList(Businesses);
     }