diff --git a/src/routine.c b/src/routine.c index a43a2ae..36e3c2f 100644 --- a/src/routine.c +++ b/src/routine.c @@ -9168,8 +9168,8 @@ NTSTATUS _r_sys_getmemoryinfo ( out_buffer->physical_memory.used_bytes = out_buffer->physical_memory.total_bytes - out_buffer->physical_memory.free_bytes; - out_buffer->physical_memory.percent = (ULONG)PR_CALC_PERCENTOF (out_buffer->physical_memory.used_bytes, out_buffer->physical_memory.total_bytes); out_buffer->physical_memory.percent_f = PR_CALC_PERCENTOF (out_buffer->physical_memory.used_bytes, out_buffer->physical_memory.total_bytes); + out_buffer->physical_memory.percent = (ULONG)out_buffer->physical_memory.percent_f; } // file cache information @@ -9181,8 +9181,8 @@ NTSTATUS _r_sys_getmemoryinfo ( out_buffer->system_cache.free_bytes = (ULONG64)sfci.PeakSize - (ULONG64)sfci.CurrentSize; out_buffer->system_cache.used_bytes = sfci.CurrentSize; - out_buffer->system_cache.percent = (ULONG)PR_CALC_PERCENTOF (out_buffer->system_cache.used_bytes, out_buffer->system_cache.total_bytes); out_buffer->system_cache.percent_f = PR_CALC_PERCENTOF (out_buffer->system_cache.used_bytes, out_buffer->system_cache.total_bytes); + out_buffer->system_cache.percent = (ULONG)out_buffer->system_cache.percent_f; } // page file information @@ -9214,8 +9214,9 @@ NTSTATUS _r_sys_getmemoryinfo ( pagefile = pagefile->NextEntryOffset ? PTR_ADD_OFFSET (pagefile, pagefile->NextEntryOffset) : NULL; } - out_buffer->page_file.percent = (ULONG)PR_CALC_PERCENTOF (out_buffer->page_file.used_bytes, out_buffer->page_file.total_bytes); - out_buffer->page_file.percent_f = PR_CALC_PERCENTOF (out_buffer->page_file.used_bytes, out_buffer->page_file.total_bytes); + //memory are zeroed at start - no need to reassign zero + if (out_buffer->page_file.total_bytes) out_buffer->page_file.percent_f = PR_CALC_PERCENTOF (out_buffer->page_file.used_bytes, out_buffer->page_file.total_bytes); + out_buffer->page_file.percent = (ULONG)out_buffer->page_file.percent_f; } _r_mem_free (pagefiles); diff --git a/src/routine.h b/src/routine.h index 846c905..4bb22b0 100644 --- a/src/routine.h +++ b/src/routine.h @@ -5586,6 +5586,16 @@ FORCEINLINE BOOLEAN _r_listview_deleteallitems ( return (_r_wnd_sendmessage (hwnd, ctrl_id, LVM_DELETEALLITEMS, 0, 0) == TRUE); } +FORCEINLINE VOID _r_listview_reset ( + _In_ HWND hwnd, + _In_opt_ INT ctrl_id +) +{ + _r_listview_deleteallitems(hwnd, ctrl_id); + _r_listview_deleteallgroups(hwnd, ctrl_id); + _r_listview_deleteallcolumns(hwnd, ctrl_id); +} + FORCEINLINE BOOLEAN _r_listview_deleteitem ( _In_ HWND hwnd, _In_opt_ INT ctrl_id,