5.6 beta fixes since 5.0.14
===========================

(All) #779

    Executing a multi-line DIM would cause line 1 of the processing
    table to be executed for each of the continuation lines.

(All) #783

    A non-dash lookup to the main file may clear non-",g" DECLAREd
    variables.  (See also #785.)

(All) #785

    If you have DECLAREd GLOBAL variables in the automatic and/or the
    input/output table, and then CALL another table which DECLAREs
    addtional GLOBAL variables, such that the total number of such
    variables crosses a multiple-of-32 boundary, and then from within
    the main input/output table execute a non-dash lookup to the main
    file, filePro may crash.  (See also #783.)

(All)

    Add PFCLOSEPENDWARNING=OFF to disable the warning if you attempt to
    close an HTML tag when it was not open.

(All) #801

    Swapped the memo editor extended functions T and I from:
        T - Toggle insert
        I - Insert time
    to
        I - Toggle insert
        T - Insert time

    Use PFMEMOEDITOLDKEYS=ON to restore the old keys.

(All) #803

    Increase the compiled tok code limit from 128K to 2MB.

(All) #808

    When passing both "-XIn" and "-D" flags to *clerk, the "Press DEL"
    prompt from the index box wasn't cleared.

(fPSQL) #817

    "SET QUALIFIER" was ignored in the network version of fPSQL.

(Solaris/AIX) #822

    "GOSUB (expr) OF ..." could crash the prc compiler on Solaris and AIX
    platforms with a SEGV or bus error.

(Solaris/AIX) #823

    A DKNF error could cause a SEGV or bus error on Solaris and AIX platforms.

(*nix) #827

    The MSB of the color attribute bit originally meant "blink" on MS-DOS
    systems.  Windows changed the meaning to "high-intensity background".
    The *nix version of filePro still used this for "blink".

    Moving color screens from Windows to *nix would cause a different
    appearance between Windows and *nix if this bit was used anywhere.

    The *nix version of filePro now ignores this bit by default, as ANSI
    does not define a "high-intensity background" escape sequence.

    PFMSBBLINK=ON will restore the old behavior of MSB meaning "blink".

(Quikstart) #784

    If you have an array aliased to dummy fields and use "CLEAR arrayname",
    and run in read-only mode, filePro would report an "attempt to modify
    read-only file" warning, even though no real fields were modified.

(All) #707

    Some old output formats would cause dmoedef to crash.

(fileProGI) #720

    ddir/dprodir did not prompt to confirm deletions under fileProGI.

(All) #763

    Using a DECLARE LOCAL variable as an array subscript could give a
    false "subscript out of range" error in *report.

(fPSQL) #769

    When running a query from the command line, and sending the output to
    a file (via SET OUTPUT), if no records are selected, the "no output
    generated" message box is no longer displayed.

(All) #777

    A stray graphics character was printed at the very end of memos.

(Cosmetic) #780

    The spacing of prompts in dscreen's F8/options screen was not consistent.

(All) #781

    dxmaint did not allow indexes to be built on the 4-digit-year system
    date fields.

(All) #786

    FORM now strips trailing blanks from the format name, eliminating the
    need to use FORM name{""

(All) #790

    Pressing F8/Options in dscreen would cause a screen's password to be
    removed.

(All) #791

    When placing a memo on a subtotal/grand total line, the memo's height
    would be shortened.

(ODBC) #794

    Due to a bug in Microsoft's runtime libraries, pmaint would crash if
    the .prt file was in Unix format (LF line endings) rather than Windows
    format (CRLF line endings).

(All) #809

    The filePro debugger would read PUSHKEYed keystrokes.

(All) #813

    A lookup back to the main file on an index built on a key length of a
    multiple of 32 bytes could crash filePro.  ("Debug error DAMAGE" on
    Windows, and SEGV on *nix.)


(All) #841

    A "WRITE lookupname" where "lookupname" has been closed can cause
    filePro to crash.

(fileProGI) #829

    After executing the configuration editor in ddir, the display was
    corrupted.

(All) #833

    A SHOWCTR or SHOWTOCOL executed after a SHOW (w/o row and column)
    would be displayed centered on line 23 after doing a browse lookup.

(All) #841

    A "WRITE lookupname" done after "CLOSE lookupname" could crash filePro.

(All) #854

    LISTBOX and FIELD* functions would pass syntax check (but fail at
    runtime) if the close parenthesis was missing.

(All) #856

    Marking text in the memo editor would sometimes hightlight the wrong
    part of the memo.

(All) #857

    An automatic index built on multiple associated fields could cause
    the wrong record to be read on lookups or index-by searches.

(All) #859

    F7 in the memo editor when on the last word-wrapped line of a line
    of text would place the cursor on the last character in the text,
    rather than on the end-of-line marker.

(All) #867

    Index scan (PFIXS=ON, -j) would not correctly handle indexes with
    descending sorts on scans other than "EQ".  (It would only find
    matching records.)

(All) #874

    Hardcopies from pmaint would print 1 more line per page than defined
    for the printer.

(5.6)

    WRAPINFO()/@WRAPINFO() renamed to WORDWRAP()/@WORDWRAP[] to reflect
    new functionality. (Old names will still be accepted for now.)

(5.6) #875

    Internal break stack increased from 20 to unlimited.  (Needed to
    handle nested CALLs.)

==== Beta 5 notes

(5.6)

    dxmaint 5.6 used to require Enter after pressing index letter.  This
    is no longer needed, to match previous behvior.

(All) #879

    If you do multiple cross-reference hardcopies in *cabe in a single
    session, without printing the prc itself, the page number is not
    reset between printouts.

(All) #880

    The cross-reference listing in *cabe would leave off the field numbers
    in lookup files if the field number was greater than the number of
    fields in the main file.  (For example, "lookupfile[20]" would print
    wth a blank number if there were less than 20 fields in the main file.)

(5.6)

    Removed improper restriction in encryption functions that nonce and
    key lengths be the same.

(5.6)

    If the nonce was not supplied, the filePro-generated one could be the
    wrong length in some circumstances.

(5.6, SCO OSR5)

    If the available free space is greater than 4GB, treat it as if it
    were 4GB, rather than failing.

(All) #704

    fPCopy couldn't copy ODBC files.

(5.6) #877

    Spellcheck would not replace a misspelled word if it were the last
    word in the field.

(5.6)

    When run as "root", filePro would use user "filepro"'s word list.

(5.6) #792

    If you have a report with page-break subtotals, and place the grand
    totals on a new page, and you have a PRINT statement in the processing,
    and you don't PRINT any of the records from the last subtotal break,
    then the grand totals will print with a page header with the page
    number one too high.  (However, the page number within the grand
    total section itself is correct.)

(5.6) #840

    After spellchecking a memo field, the memo would contain an extra
    CR at the end of each line.

(5.6) #850

    Pressing Ctrl-C/DEL in the memo spellchecker would sometimes cause
    the screen to not be redrawn properly.

(All) #865

    A selection set with memo_field gt "" a a condition would select
    all records, rather than just those with the memo not blank.

(All) #866

    If you left the menu item "title" entry blank, the item was not
    drawn, though you could still highlight it.

(All) #871

    If you chose to xfer to a file by selecting the menu choice within
    xfer, rather than the "-lf" flag, it was possible to crash xfer if
    the record size was very large.

(5.6) #873

    A nested CALL to the same processing table would crash filePro.

(All) #881

    If you brought up the memo editor in READONLY mode, the prompts
    still included those options which would not be applicable.

(All) #882

    IMPORT/EXPORT files were closed before @DONE was executed.

(All) #884

    Browse lookups with "show=pkeep" would not retain the cursor
    position if the key length were zero.

(5.6) #886

    If you tried to use the socket functions when you didn't have a
    socket license, filePro might crash rather than simply fail the
    function.

(All ODBC) #793

    Under MS-SQL ODBC server, in some conditions, *report and dxmaint
    would fail with an "invalid descriptor index" error.

(All) #847

    Running *report with the "-ro" flag could cause a "file table full"
    error on some platforms.

(5.6) #869

    Using the spellcheck's F3 to type in a word no longer adds the word
    to the dictionary.  (F1 will still add it to the dictionary.)

(5.6) #876

    dexpand used to allow numbers up to "999,999,999,999" records to
    expand, causing an overflow.

(All) #885

    Calling DLEN() with a string longer than 256 characters and of
    "just the right length", or SHOWTOCOL with "just the right length"
    could crash filePro.  ("Just the right length" being dependant on
    the particular platform.)

(ODBC) #887

    There is an undoumented limit to Microsoft's MFC ODBC library
    which restricts you to 256 columns in any given view.

(*nix fPSQL) #889

    fPSQL's help engine didn't handle Windows-formatted text files
    on *nix systems.

(5.6) #891

    User wordlists changed from ".lst" extension to ".txt".

(All) #892

    If you modify a real field in automatic processing in *report,
    and an automatic index is built on that field, the index may not
    be properly updated.

(5.6) #895

    A new "show license" utility is now included, allowing the user
    to see what is licensed.

(All) #896

    DIM of an array name which started with a number did not give a
    syntax error.

(5.6) #893

    @LICENSE extended to include the following subscripts:

        8: License start date
        9: License end date

    The fields are in YYMD format, and are null if the license does not
    specify a start/end date.

(5.6) #839

    If the only modification you made to a record was to SPELLCHECK()
    a field, the record wasn't written to disk.

(5.6) #895

    A showlicense utility is now included to display the contents of
    the license file in a human-readable form.

(All) #896

    filePro didn't report an error on DIM if a number was used as the
    first character of the array name.

(ODBC) #897

    Given the right combination of data source, ID field type, and
    PFODBCCOMMITTYPE setting could cause dxmaint and *report to
    improperly sort the file.

(Windows) #904

    Under Windows, dxmaint used to show a date of "00/00/00" for
    demand indexes.

(All) #909

    If you have a browse lookup with "-m" on a multi-key index, and
    pass a blank key, no records will be matched unless the entire
    key in the lookup file is all blank, rather than just the key
    specified in the lookup.

    Changes to filePro behavior:

        A null key passed to a browse lookup now means "find the lowest
        key", rather than "find an all blank key".

        If you specify "mlen=" on a browse lookup, and do not nave
        PFBRWM=ON to make trailing blanks significant, filePro will not
        make the key shorter than the specified mlen length.  (For
        example, a key of 8 spaces with "mlen=4" will result in a key
        of 4 spaces.)

(All) #718

    With PFIXS=ON, filePro scans could fail with an index built in
    descending order.

(ODBC) #799

    ddefine would allow you to build default (empty) indexes on ODBC
    data sources that had data in them.

(All) #802

    If you executed a CHAIN command from within an event which was
    triggered while updating a screen from a SCREEN command within
    another event, then when you save the original SCREEN, filePro
    would attempt to continue from the original SCREEN command, which
    is no longer there due to the CHAIN.

    For example:

        @UPDATE issues a SCREEN command.
        While updating the screen, an @WLF event is triggered.
        Within the @WLF, a CHAIN is executed.
        You continue updating the original screen, and press SAVE.
        At this point, filePro attempted to continue from the SCREEN
            statement above.

(Windows) #818

    The Windows version of filePro used to permit PFDIR to include a
    drive letter, which should not have been permitted.  filePro no
    longer allows this.  Should you absolutely need to have a drive
    letter in PFDIR, then you can set "PFDSK=;", and "trick" filePro
    into "working" again.

(*nix) #890

    setperms and fp.list updated to not touch files placed in the
    filepro/filename directory which are not part of filePro.

(All) #898

    The memo editor didn't have a way to cancel "mark" mode without
    actually doing a cut or copy.  You can now cancel "mark" mode
    with "X".

(All) #899

    Pressing up-arrow from a field on the first row on a screen without
    a cursor path would not move the cursor to another field.

(Windows) #903

    If the last character on a screen was green-on-blue (attribute 0x1A),
    the screen format would get the last byte truncated, making the file
    invalid.

(All) #905

    ddir/dprodir would give an error if you tried to delete the data from
    a non-filePro file that pointed to a non-existent file.

(Windows fPSQL) #906

    If an error occurred and fPSQL displayed a filename in an errorbox,
    and that filename included backslashes (ie: "\filepro\filename" as
    opposed to "/filepro/filename"), the errorbox would be displayed
    improperly.

(All) #907

    The index selection box in dxmaint would not respond to a keypress
    if that keypress corresponded to the currently-highlighted index.

(5.6) #910

    DIM has been enhanced to allow you to alias the array to an associated
    field group.  For example:

        DIM MyA1Group(5):A1

    will alias the array to the 5 elements of the A1 group, even if the
    fields are not contiguous within the map.

(All) #911

    dclerk would crash if you attempted to display an old-style screen
    which had been corrupted.

(All) #914

    If you have the same variable DECLAREd more than one in the prc
    file, then F6/D to display dummy fields and variable would show
    none.

(5.6) #915

    Dummy fields and DECLAREd variables can now be memos.

(Quikstart 5.6) #918

    Returning from nested calls could crash filePro.

(All) #917

    If you have an uncast dummy field which has never had a value
    assigned to it, filePro could crash if you try to SHOW that field.

(All) #921

    In dscreen and dmoedef, importing a text file that didn't end in a
    newline would not import the last line of the file.

(All) #922

    Browsing on an inde built on an associated field would show the first
    instance regardless of the correct instance, for the top record on the
    screen after pressing "R" to reset the browse to the beginning.

(All) #923

    A browse lookup on an index built on an associated field would show
    the first instance regardless of the correct instance, for the first
    record shown in the browse window.

