Overview
Comment: | smaz_implementations-base_64: check end-of-input in Read_Code |
---|---|
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
6c1f9bd68266700af4a5f768eeea9d4a |
User & Date: | nat on 2017-02-27 21:27:58 |
Other Links: | manifest | tags |
Context
2017-02-28
| ||
20:13 | smaz_implementations-base_4096: check end-of-input in Read_Code check-in: 3b9dae1e75 user: nat tags: trunk | |
2017-02-27
| ||
21:27 | smaz_implementations-base_64: check end-of-input in Read_Code check-in: 6c1f9bd682 user: nat tags: trunk | |
2017-02-26
| ||
21:43 | smaz_implementations-base_64_tools: new primitive to check end of input check-in: b05bcfb847 user: nat tags: trunk | |
Changes
Modified src/natools-smaz_implementations-base_64.adb from [de5cce5c1a] to [d47cc06763].
1 | ------------------------------------------------------------------------------ | | | 1 2 3 4 5 6 7 8 9 | ------------------------------------------------------------------------------ -- Copyright (c) 2016-2017, Natacha Porté -- -- -- -- Permission to use, copy, modify, and distribute this software for any -- -- purpose with or without fee is hereby granted, provided that the above -- -- copyright notice and this permission notice appear in all copies. -- -- -- -- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -- -- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -- |
︙ | ︙ | |||
32 33 34 35 36 37 38 39 | Code : out Natools.Smaz_Implementations.Base_64_Tools.Base_64_Digit; Verbatim_Length : out Natural; Last_Code : in Natools.Smaz_Implementations.Base_64_Tools.Base_64_Digit; Variable_Length_Verbatim : in Boolean) is Ignored : String (1 .. 2); Offset_Backup : Ada.Streams.Stream_Element_Offset; begin | > | > > > > > > | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | Code : out Natools.Smaz_Implementations.Base_64_Tools.Base_64_Digit; Verbatim_Length : out Natural; Last_Code : in Natools.Smaz_Implementations.Base_64_Tools.Base_64_Digit; Variable_Length_Verbatim : in Boolean) is Ignored : String (1 .. 2); Offset_Backup : Ada.Streams.Stream_Element_Offset; Finished : Boolean; begin Tools.Next_Digit_Or_End (Input, Offset, Code, Finished); if Finished then Code := Base_64_Tools.Base_64_Digit'Last; Verbatim_Length := 0; return; end if; if Code <= Last_Code then Verbatim_Length := 0; elsif Variable_Length_Verbatim then if Code < 63 then Verbatim_Length := 63 - Natural (Code); |
︙ | ︙ |