diff --git a/tests/system_properties_test.cpp b/tests/system_properties_test.cpp
index 50bdfdf..9602607 100644
--- a/tests/system_properties_test.cpp
+++ b/tests/system_properties_test.cpp
@@ -24,7 +24,7 @@
 #define _REALLY_INCLUDE_SYS__SYSTEM_PROPERTIES_H_
 #include <sys/_system_properties.h>
 
-extern void *__system_property_regions__[PA_REGION_COUNT];
+extern void *__system_property_area__;
 
 struct LocalPropertyTestState {
     LocalPropertyTestState() : valid(false) {
@@ -35,10 +35,8 @@
             return;
         }
 
-        for (size_t i = 0; i < PA_REGION_COUNT; i++) {
-            old_pa[i] = __system_property_regions__[i];
-            __system_property_regions__[i] = NULL;
-        }
+        old_pa = __system_property_area__;
+        __system_property_area__ = NULL;
 
         pa_dirname = dirname;
         pa_filename = pa_dirname + "/__properties__";
@@ -52,9 +50,7 @@
         if (!valid)
             return;
 
-        for (size_t i = 0; i < PA_REGION_COUNT; i++) {
-            __system_property_regions__[i] = old_pa[i];
-        }
+        __system_property_area__ = old_pa;
 
         __system_property_set_filename(PROP_FILENAME);
         unlink(pa_filename.c_str());
@@ -65,7 +61,7 @@
 private:
     std::string pa_dirname;
     std::string pa_filename;
-    void *old_pa[PA_REGION_COUNT];
+    void *old_pa;
 };
 
 TEST(properties, add) {
