The phenomenon is not a glitch, it's actually the result of an unintuitive algorithm that is used to calculate your armor points.
It is calculated using the following equation:
The information needed to use the equation are as follows:
Base Armor Points
The following table lists the base armor points of the different armor types. These are the numbers that get plugged into the summation that is the coefficient of the fraction.
Base Armor Points
The base armor points of a piece of armor are the hardcoded values for the number of armor points it provides when it is has no damage and is the only thing that is worn. They do not vary with differences in the material used to craft the armor, material type only affects durability.
For more details on base armor points refer to the minecraft wiki page on Armor
The following table lists the base durabilities of the different armor types. These are the numbers that get plugged into the summation that is the denominator of the fraction in the armor point expression.
Leather Gold Chainmail Iron Diamond
Helmet 34 68 67 136 272
Chestplate 49 96 96 192 384
Leggings 46 92 92 184 368
Boots 40 80 79 160 320
The numbers represent the number of half hearts of damage that each item can absorb before they get destroyed.
For more details on item durability refer to the minecraft wiki page on Item Durability
Current durability is the durability left (counted in half hearts) in the piece of armor in question. It can be estimated by looking at the durability bar that appears underneath damaged pieces of armor. If this bar is not present the armor's current durability is the same as the base durability. If it is present and it appears to be, for example, one quarter of the way full then the current durability is one quarter of the base durability.
Calculation for the Above Scenario
So the two pieces of armor involved are a undamaged leather chestplate and a pair of boots that look they have been damaged to about an eighth of their base durability.
So first we look up the base armor points and base durabilities of the items:
Base Armor Points:
Chestplate = 4
Boots = 1.5
Leather Chestplate = 49
Leather Boots = 40
Based on the base durabilities we can calculate the current durabilities, which are as follows:
Chestplate = 49 * 1 = 49
Boots = 40 * (1/8) = 5
Plugging all this information into the main equation we get:
Armor Points = (4 + 1.5) * ((49 + 5)/(40 + 49))
= (5.5) * (54/89)
= 5.5 * .6
= 3.3 ≈ 3