From 89c15ecb23a5d5b8c61fce86926cedb1a9c32f45 Mon Sep 17 00:00:00 2001 From: rubidium Date: Sat, 10 May 2008 13:53:11 +0000 Subject: (svn r13030) -Codechange: do use MallocT instead of ReallocT when 100% sure that the pointer you are allocating to is NULL. Patch by Alberth. --- src/window.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/window.cpp b/src/window.cpp index 0697c75c8..24b2aae8f 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -849,9 +849,17 @@ bool IsWindowOfPrototype(const Window *w, const Widget *widget) return (w->original_widget == widget); } -/** Copies 'widget' to 'w->widget' to allow for resizable windows +/** + * Assign widgets to a new window by initialising its widget pointers, and by + * copying the widget array \a widget to \c w->widget to allow for resizable + * windows. * @param w Window on which to attach the widget array - * @param widget pointer of widget array to fill the window with */ + * @param widget pointer of widget array to fill the window with + * + * @post \c w->widget points to allocated memory and contains the copied widget array except for the terminating widget, + * \c w->original_widget points to the original widgets, + * \c w->widget_count contains number of widgets in the allocated memory. + */ void AssignWidgetToWindow(Window *w, const Widget *widget) { w->original_widget = widget; @@ -861,7 +869,7 @@ void AssignWidgetToWindow(Window *w, const Widget *widget) for (const Widget *wi = widget; wi->type != WWT_LAST; wi++) index++; - w->widget = ReallocT(w->widget, index); + w->widget = MallocT(index); memcpy(w->widget, widget, sizeof(*w->widget) * index); w->widget_count = index - 1; } else { -- cgit v1.2.3-54-g00ecf