Spehro Pefhany's answer is correct. I just want to add few things.
Keep in mind that NPN transistor gain doesn't combine with PNP when you consider leakage current. The only gain you have when NPN is off is the darlington gain. Then you have the minimum load current (let's say it's 50mA relay) divided by the darlington gain - 1000 => you need 50uA to turn the PNP on. Even without built in darlington resistors it's 1000 times larger than what leakage current of 2N3904 specified in datasheet (50nA).
You can also calculate the other way around. 50nA of leakage * hfe=1000 = 50uA. So if you put a load of 50uA or less then you have to worry about leakage and calculate if the built in resistors will prevent turn on. Considering that a simple led is between 1 and 10 mA you'll rarely find a load that low. And if you do, you wouldn't need darlington anyway.
Another tip - if you only need 50uA (that's 5mA if you want to drive full 5A which the darlington is capable of) you don't need 1k at the NPN base. hfe minimum of 2N3904 is 100 at 10mA, so 5mA / 100 = 50uA. If arduino is 5V, the base resistor needs to be 5V - Vbe = 5V - 0.85 = 4.15V divided by required current 50uA (that's 50*10^-6) = 83kOhm. I reality you should use lower than that. I would recommend R1 = 20-47kOhm.
The calculation is the same for R2 - you should choose it to have 5mA at the base if you want 5A drive. So R2 = (12V-Vcenpn-Vbepnp)/0.005 = (12-0.2-2.5)/0.005 = 1.86k - use 1.8k. But if you want to drive a relay which is not more than 50-100mA you can use higher resistor - 10k-47k (for 100mA should be <93k)