separate (Tracker.Element_Pkg.Update_Current)
procedure Fix_El_Size (El_Ptr : in Element_Pointer) is
    -----------------------------------------------------------------------------
    --|
    --|  NAME:  FIX_EL_SIZE
    --|
    --|  OVERVIEW:
    --|    This procedure updates the element's current size.
    --|
    --|  EXCEPTIONS HANDLED:
    --|    none
    --|
    --|  HISTORY:
    --|    written by   Bonnie Burkhardt   March 1985
    --|
    -----------------------------------------------------------------------------

    Old_Size : Integer range 0 .. 999_999 := El_Ptr.Current_Size;

begin
    Put (" For ");
    Put (El_Ptr.Desc_Key);
    Put (" -- ");
    Put (El_Ptr.Description);
    El_Ptr.Current_Size := Prompt_Pkg.Update_Current_Size (El_Ptr.Current_Size);

    -- if the current size estimate decreased, then the percent of work
    -- done at start remains the same but the amount of work done at
    -- start decreases
    if (El_Ptr.Current_Size = 0) or (Old_Size = 0) then
        El_Ptr.Size_Done_At_Start := 0;
    elsif Old_Size > El_Ptr.Current_Size then
        El_Ptr.Size_Done_At_Start := El_Ptr.Size_Done_At_Start *
                                        El_Ptr.Current_Size / Old_Size;
    end if;

    El_Ptr.Date_Size_Verified := Data_Pkg.Date;
end Fix_El_Size;
