@@ -736,23 +736,27 @@ temp_pntrString *pntrMakeTempAlloc(pntrString *s);
736
736
* \ref memFreePool.
737
737
* \attention freed \ref block "blocks" contain \ref pntrString instances.
738
738
* See \ref pntrTempAllocStack to learn how this free process can be
739
- * dangerous if no precautions are taken.
739
+ * dangerous if insufficient precautions are taken.
740
740
* \param[in,out] target (not null) the address of a pointer pointing to the
741
741
* first byte of a \ref block receiving the copied elements of \p source.
742
742
* \param[in] source (not null) a pointer to the first \ref pntrString element
743
743
* in a \ref block, to be copied from.
744
744
* \pre
745
- * - source does not contain NULL pointerelements , but is terminated by one.
746
- * This final NULL pointer is not part of the array, but must be present.
745
+ * - source does not contain NULL pointer elements , but is terminated by
746
+ * one. This final NULL pointer is not part of the array, but must be present.
747
747
* - the target \ref block does not contain any valuable data.
748
+ * - all \ref pntrString elements held in \ref pntrTempAllocStack can be
749
+ * discarded without losing relevant references.
748
750
* \post
749
751
* - the \ref block \p target points to is filled with a copy of
750
752
* \ref pntrString elements \p source points to, padded with a terminal
751
753
* NULL.
752
754
* - due to a possible reallocation the pointer \p target points to may
753
755
* change.
754
756
* - The stack pointer of \ref pntrTempAllocStack is reset to
755
- * \ref g_pntrTempAllocStackStart
757
+ * \ref g_pntrTempAllocStackStart and all referenced
758
+ * \ref block "blocks" on and beyond that are returned to the
759
+ * \ref memFreePool.
756
760
* - updates \ref db3 and \ref poolTotalFree.
757
761
* - Exit on out-of-memory
758
762
* \bug If the \p target block is full after the copy operation, it is not
0 commit comments