ಜುಲೈ 6, 2026 ರಂದು ಒಬ್ಬ ಡೌನ್ಸ್ಟ್ರೀಮ್ ನಿರ್ವಾಹಕರು (downstream maintainer) Electron 42.6.0 ಅನ್ನು ಬಿಡುಗಡೆ ಮಾಡಿದರು. ಇದು Linux ಮೆಸೇಜ್-ಬಾಕ್ಸ್ ಕ್ರ್ಯಾಶ್ಗಳನ್ನು ತಡೆಯುವ ಪರಿಹಾರವನ್ನು ಹೊಂದಿದೆ, ಆದರೆ ಇದೇ ಕೋಡ್ ಅನ್ನು ಹೊಂದಿರುವ ಅಪ್ಸ್ಟ್ರೀಮ್ পুল ರクエスト (upstream pull request) ಇನ್ನೂ ಬಾಕಿ ಇದೆ. Qt UI ಬ್ಯಾಕೆಂಡ್ ಅನ್ನು ಅವಲಂಬಿಸಿರುವ Linux ಬಳಕೆದಾರರು ಈಗ ಯಾವುದೇ ಸೆಗ್ಮೆಂಟೇಶನ್ ಫಾಲ್ಟ್ (segmentation fault) ಇಲ್ಲದೆ Electron ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಚಲಾಯಿಸಬಹುದು.
ಕ್ರ್ಯಾಶ್ಗೆ ಕಾರಣವೇನು
Electron ನ Linux UI ರೆಂಡರಿಂಗ್ ಬ್ಯಾಕೆಂಡ್ ಆಗಿ GTK ಅಥವಾ Qt ಎರಡರಲ್ಲಿ ಒಂದನ್ನು ಬಳಸಬಹುದು. ಒಂದು ಅಪ್ಲಿಕೇಶನ್ ಮೆಸೇಜ್ ಬಾಕ್ಸ್ ಅನ್ನು ತೋರಿಸಿದಾಗ, ಕೋಡ್ ಸಕ್ರಿಯ UI ಸಿಂಗಲ್ಟನ್ (singleton) ಬಳಿ GTK ಬೆಂಬಲವನ್ನು ಕೇಳುತ್ತದೆ, ನಂತರ GTK ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಪಡೆಯಲು ಪ್ರಯತ್ನಿಸುತ್ತದೆ. ಪ್ರಸ್ತುತ ಇಂಪ್ಲಿಮೆಂಟೇಶನ್ Qt ಆಗಿದ್ದರೆ, ಹುಡುಕಾಟವು ವಿಫಲವಾಗುತ್ತದೆ ಮತ್ತು ಪ್ರಕ್ರಿಯೆಯು ಸೆಗ್ಮೆಂಟೇಶನ್ ಫಾಲ್ಟ್ನೊಂದಿಗೆ ಕ್ರ್ಯಾಶ್ ಆಗುತ್ತದೆ. ಈ ಸಮಸ್ಯೆಯನ್ನು ಮೊದಲು ಸಾರ್ವಜನಿಕ ಇಶ್ಯೂನಲ್ಲಿ ವರದಿ ಮಾಡಲಾಗಿತ್ತು ಮತ್ತು electron/electron#52238 ಆಗಿ ಟ್ರ್ಯಾಕ್ ಮಾಡಲಾಗಿತ್ತು.
ಡೌನ್ಸ್ಟ್ರೀಮ್ ಪರಿಹಾರವು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ
ಈ ಪ್ಯಾಚ್ ಎರಡು ಕರೆಗಳ (calls) ಕ್ರಮವನ್ನು ಬದಲಾಯಿಸುತ್ತದೆ: ಇದು GTK ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಪಡೆಯುವ ಮೊದಲು GTK ಥೀಮ್ ಅನ್ನು ವಿನಂತಿಸುತ್ತದೆ. ಈ ಸಣ್ಣ ಬದಲಾವಣೆಯು ಕ್ರ್ಯಾಶ್ಗೆ ಕಾರಣವಾದ null-pointer dereference ಅನ್ನು ತಡೆಯುತ್ತದೆ. ಅಪ್ಸ್ಟ್ರೀಮ್ ಕಂಟ್ರಿಬ್ಯೂಟರ್ ತೆರೆದಿರುವ পুল ರクエストನಲ್ಲಿ ಸಲ್ಲಿಸಿದ ಅದೇ ಬದಲಾವಣೆಯನ್ನು ಡೌನ್ಸ್ಟ್ರೀಮ್ ನಿರ್ವಾಹಕರು ಅನ್ವಯಿಸಿದ್ದಾರೆ.
ಡೌನ್ಸ್ಟ್ರೀಮ್ ಏಕೆ ಮುಖ್ಯ
ಡೌನ್ಸ್ಟ್ರೀಮ್ ಪ್ರಾಜೆಕ್ಟ್ಗಳು ನಿರ್ದಿಷ್ಟ ಡಿಸ್ಟ್ರಿಬ್ಯೂಷನ್ಗಳಿಗಾಗಿ ಅಪ್ಸ್ಟ್ರೀಮ್ ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ಮರುಪ್ಯಾಕೇಜ್ ಮಾಡುತ್ತವೆ. ಅವು ತಮ್ಮದೇ ಆದ ಪೈಪ್ಲೈನ್ಗಳಲ್ಲಿ ಪ್ಯಾಚ್ಗಳನ್ನು ಪರೀಕ್ಷಿಸುತ್ತವೆ ಮತ್ತು ಪರಿಹಾರದ ಮೇಲೆ ನಂಬಿಕೆ ಬಂದಾಗ ಅವುಗಳನ್ನು ಬಿಡುಗಡೆ ಮಾಡುತ್ತವೆ. ಇಲ್ಲಿ, ನಿರ್ವಾಹಕರು ಈ ಪರಿಹಾರವು ಪ್ರೊಡಕ್ಷನ್ ಬಳಕೆದಾರರಿಗೆ ಸಿದ್ಧವಾಗಿದೆ ಎಂದು ನಿರ್ಧರಿಸಿ ಅದನ್ನು ತಮ್ಮ ಪ್ಯಾಕೇಜ್ಗೆ ವಿಲೀನಗೊಳಿಸಿದ್ದಾರೆ (merged), ಮತ್ತು ತಮ್ಮ ಕಡೆಯ ಇಶ್ಯೂ ಅನ್ನು ಮುಕ್ತಾಯಗೊಳಿಸಿದ್ದಾರೆ. ಅಪ್ಸ್ಟ್ರೀಮ್ ವಿಮರ್ಶೆಯು ಇನ್ನೂ ಬಾಕಿ ಇರುವುದರಿಂದ, ಅಧಿಕೃತ Electron ರೆಪೊಸಿಟರಿಯು ಇನ್ನೂ ಈ ಬದಲಾವಣೆಯನ್ನು ಅಳವಡಿಸಿಕೊಂಡಿಲ್ಲ.
ಇದರ ಪ್ರಯೋಜನವು ತಕ್ಷಣವೇ ಸಿಗುತ್ತದೆ: ಡೌನ್ಸ್ಟ್ರೀಮ್ 42.6.0 ಆವೃತ್ತಿಗೆ ಅಪ್ಡೇಟ್ ಮಾಡುವ ಯಾವುದೇ ಬಳಕೆದಾರರು ಕ್ರ್ಯಾಶ್ ಸಮಸ್ಯೆಯನ್ನು ತಪ್ಪಿಸಬಹುದು.
ಪರಿಸರ ವ್ಯವಸ್ಥೆಯ ಮೇಲಿನ ಪರಿಣಾಮಗಳು
- Linux ಬಳಕೆದಾರರು: ಅಪ್ಸ್ಟ್ರೀಮ್ ವಿಲೀನಕ್ಕಾಗಿ ಕಾಯದೆ ಸ್ಥಿರವಾದ ಅನುಭವವನ್ನು ಪಡೆಯುತ್ತಾರೆ.
- ಡೌನ್ಸ್ಟ್ರೀಮ್ ನಿರ್ವಾಹಕರು: ತಮ್ಮ ಬಳಕೆದಾರರನ್ನು ರಕ್ಷಿಸಬಲ್ಲರು ಎಂದು ತೋರಿಸಿಕೊಡುತ್ತಾರೆ.
- ಅಪ್ಸ್ಟ್ರೀಮ್ ಡೆವಲಪರ್ಗಳು: ಪರಿಹಾರವು ಕೆಲಸ ಮಾಡುತ್ತದೆ ಎಂಬ ನೈಜ-ಪ್ರಪಂಚದ ದೃಢೀಕರಣವನ್ನು ಪಡೆಯುತ್ತಾರೆ, ಇದು ವಿಮರ್ಶಾ ಪ್ರಕ್ರಿಯೆಯನ್ನು ವೇಗಗೊಳಿಸಬಹುದು.
ಮುಂದೆ ಏನನ್ನು ಗಮನಿಸಬೇಕು
- ಅಪ್ಸ್ಟ್ರೀಮ್ ವಿಮರ್ಶೆ: ಒಂದು ವೇಳೆ পুল ರクエスト ಅಂಗೀಕರಿಸಲ್ಪಟ್ಟರೆ, ಈ ಪರಿಹಾರವು ಮುಂದಿನ ಅಧಿಕೃತ Electron ಬಿಡುಗಡೆಯ ಭಾಗವಾಗುತ್ತದೆ, ಇದರಿಂದ ಡೌನ್ಸ್ಟ್ರೀಮ್ ಮತ್ತು ಅಪ್ಸ್ಟ್ರೀಮ್ ಕೋಡ್ ಒಂದೇ ಆಗುತ್ತವೆ.
