Structure value changes on server(bug)

I have a structure having 2 int8 something like this

USTRUCT()
struct FStorageLoc
{
	GENERATED_USTRUCT_BODY()

	UPROPERTY()
	int8 RowNum;

	UPROPERTY()
	int8 ColNum;

	FStorageLoc()
	{
		RowNum = -1;
		ColNum = -1;
	}

	FStorageLoc(int8 Row, int8 Col)
	{
		RowNum = Row;
		ColNum = Col;
	}
};

I have a client function that calls another server function of the exact same type passing this value.

void APSE_LYFE_Inventory2_Storage::StorageSlotLeftClick(const FStorageLoc ItemLoc)
{
	GEngine->AddOnScreenDebugMessage(-1, 10, FColor::Black, "Client " + FString::FromInt(ItemLoc.RowNum) + " " + FString::FromInt(ItemLoc.ColNum));
	Server_StorageSlotLeftClick(ItemLoc);
}

void APSE_LYFE_Inventory2_Storage::Server_StorageSlotLeftClick_Implementation(const FStorageLoc ItemLoc)
{
	GEngine->AddOnScreenDebugMessage(-1, 10, FColor::Blue, " Server " + FString::FromInt(ItemLoc.RowNum) + " "	+ FString::FromInt(ItemLoc.ColNum));
}

The problem is when the values of the structure is 0,0 the values being passed are -1 and -1.

This doesn’t happen for any other values of the structure. Kind of sounds like a bug. I just tested it in the editor.After some testing, I found out it takes the default structure values.

https://forums.unrealengine.com/attachment.php?attachmentid=33761&d=1428260661

E.g. I made the default initializer like this
FStorageLoc()
{
RowNum = -5;
ColNum = -5;
}

And the values appear -5, -5 but only for the 0,0 value. Rest values work well.