Top China security body calls for 'crackdown' on 'hostile forces' after protests

Residents undergo swab testing at a residential area under lockdown due to COVID-19 coronavirus restrictions in Beijing on Tuesday (AFP photo)

BEIJING — China's top security body on Tuesday called for a "crackdown" on "hostile forces" after the country saw protests in major cities opposing COVID lockdowns and demanding greater political freedoms.

The ruling Communist Party's Central Political and Legal Affairs Commission, which oversees all domestic law enforcement in China, said it was "necessary to crack down on infiltration and sabotage activities by hostile forces in accordance with the law", according to a readout of a meeting carried in state news agency Xinhua.

It also said it was crucial to "resolutely crack down on illegal criminal acts that disrupt social order in accordance with the law, and earnestly safeguard overall social stability".

A deadly fire last week in Urumqi, the capital of the north-western region of Xinjiang, was the catalyst for the outrage, with protesters taking to the streets in cities across China to pay tribute to the dead and call for an end to hardline COVID controls.

Security forces have already moved to quash repeat demonstrations since the weekend, with police out in force across China on Tuesday.

.col-lg-12.second .opinion-widget{border-top:1px solid #D0D0D0;} #widget_1623 .opinions-title {font-size:32px;}

{{articles_filter_1623_widget?.title}}

.epaper-separator{ height: 1px; width: 100%; background-color: #D0D0D0; margin: 15px 0; }

Today’s Paper

.related-articles .layout-ratio{padding-bottom:55%;}
.alert-success { color :#A3656F ; } .alert-danger { color : red ; } .footer { font-family:Myriad Pro,Arial; }
document.addEventListener('DOMContentLoaded', function () { function validateEmail(email) { return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email); } function showModal(message,type) { const messageContainer = document.getElementById("messageContainerFooter"); messageContainer.textContent = message; messageContainer.className = `alert alert-${type} mt-3`; // Bootstrap alert styling messageContainer.classList.remove("d-none"); // Hide message after 5 seconds setTimeout(() => { messageContainer.classList.add("d-none"); }, 5000); } document.getElementById("emailFormFooter").addEventListener("submit", function(event) { event.preventDefault(); const emailInput = document.getElementById("emailFooter"); const email = emailInput.value.trim(); if (!validateEmail(email)) { showModal('Invalid email format','danger'); return; } const url = `/subscribeNewsletter?email=${encodeURIComponent(email)}`; fetch(url, { method: "GET", headers: { "Accept": "application/json" } }) .then(response => { if (!response.ok) { showModal("Error submitting email. Try again.",'danger'); } return response.json(); }) .then(data => { showModal(data.message,'success'); }) .catch(error => { showModal("Error submitting email. Try again.",'danger'); }); }); });