Hi Hanady,
If I recall, in what you are describing, you have a workflow with a fork or split that is dividing the population at some point? If this is the case, I believe the workflow executes from top to bottom when branches are concerned. So, while you should do a simple test to confirm, I believe if the top branch approval is rejected, this will pause the workflow and prevent the second branch. But, if the first branch is approved and the second is not, then the first delivery should go out.