context: Ensure force_gc flag is not lost if the idle is scheduled

If the first caller that triggers the idle happens to be non-forcing,
all later forcing calls would be ignored.

GNOME/gjs#150

Closes: #150
12 jobs for force-gc-harder in 33 minutes and 26 seconds (queued for 3 seconds)
Status Job ID Name Coverage
  Source Check
passed #27608
cppcheck

00:02:01

passed #27609
cpplint

00:01:52

passed #27610
eslint

00:01:00

passed #27607
fedora

00:02:28

 
  Test
passed #27611
fedora_clang

00:05:02

 
  Thorough Tests
passed #27614
coverage

00:24:20

passed #27613
installed_tests

00:06:52

manual #27618
allowed to fail manual
lts
manual #27617
allowed to fail manual
no_graphics
passed #27612
no_profiler

00:02:12

passed #27615
sanitizer_gcc

00:11:12

manual #27616
allowed to fail manual
valgrind