Heat the oil and butter in a large deep frying pan. Add the onion and cook gently for 5 minutes until softened. Stir in the mushrooms and garlic and cook gently for 2-3 minutes. Stir in the rice to coat with the onion and mushroom mixture. Pour in the wine and cook over a moderate heat for about 3 minutes, stirring from time to time, until the wine is absorbed. Reduce to a gentle heat. Add the tomatoes and 1/2 cups of the stock and cook for about 5 minutes until the liquid is absorbed. Pour in a further 1/2 cup of stock and continue cooking until absorbed. Repeat with the remaining stock, until it is all absorbed and the rice is creamy and tender. Stir in the parsley and half the parmesan. Season to taste. Scatter the spinach over the risotto. Cover and cook gently for 4-5 minutes until the spinach has just wilted. Serve immediately sprinkled with the remaining parmesan.